@ultraviolet/ui 1.51.2 → 1.51.4

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 (275) hide show
  1. package/dist/components/ActionBar/index.cjs +32 -0
  2. package/dist/components/ActionBar/index.js +16 -26
  3. package/dist/components/Alert/index.cjs +117 -0
  4. package/dist/components/Alert/index.js +77 -88
  5. package/dist/components/Avatar/index.cjs +59 -0
  6. package/dist/components/Avatar/index.js +29 -26
  7. package/dist/components/Badge/index.cjs +101 -0
  8. package/dist/components/Badge/index.js +36 -52
  9. package/dist/components/Banner/assets/default-image-small.svg.cjs +3 -0
  10. package/dist/components/Banner/assets/default-image.svg.cjs +3 -0
  11. package/dist/components/Banner/index.cjs +118 -0
  12. package/dist/components/Banner/index.js +64 -139
  13. package/dist/components/BarChart/Tooltip.cjs +42 -0
  14. package/dist/components/BarChart/Tooltip.js +23 -18
  15. package/dist/components/BarChart/index.cjs +69 -0
  16. package/dist/components/BarChart/index.js +29 -42
  17. package/dist/components/BarStack/index.cjs +116 -0
  18. package/dist/components/BarStack/index.js +89 -163
  19. package/dist/components/Breadcrumbs/index.cjs +75 -0
  20. package/dist/components/Breadcrumbs/index.js +30 -33
  21. package/dist/components/Bullet/index.cjs +86 -0
  22. package/dist/components/Bullet/index.js +24 -28
  23. package/dist/components/Button/index.cjs +251 -0
  24. package/dist/components/Button/index.js +117 -159
  25. package/dist/components/Card/index.cjs +54 -0
  26. package/dist/components/Card/index.js +45 -52
  27. package/dist/components/Carousel/index.cjs +125 -0
  28. package/dist/components/Carousel/index.js +75 -99
  29. package/dist/components/Checkbox/index.cjs +264 -0
  30. package/dist/components/Checkbox/index.js +246 -343
  31. package/dist/components/CheckboxGroup/index.cjs +118 -0
  32. package/dist/components/CheckboxGroup/index.js +60 -56
  33. package/dist/components/CopyButton/index.cjs +25 -0
  34. package/dist/components/CopyButton/index.js +1 -15
  35. package/dist/components/DateInput/datepicker.css.cjs +3 -0
  36. package/dist/components/DateInput/index.cjs +185 -0
  37. package/dist/components/DateInput/index.js +124 -243
  38. package/dist/components/Dialog/Context.cjs +13 -0
  39. package/dist/components/Dialog/Context.js +1 -3
  40. package/dist/components/Dialog/index.cjs +68 -0
  41. package/dist/components/Dialog/index.js +22 -43
  42. package/dist/components/Dialog/subComponents/Button.cjs +15 -0
  43. package/dist/components/Dialog/subComponents/Button.js +1 -10
  44. package/dist/components/Dialog/subComponents/Buttons.cjs +12 -0
  45. package/dist/components/Dialog/subComponents/CancelButton.cjs +9 -0
  46. package/dist/components/Dialog/subComponents/Stack.cjs +8 -0
  47. package/dist/components/Dialog/subComponents/Stack.js +3 -1
  48. package/dist/components/Dialog/subComponents/Text.cjs +8 -0
  49. package/dist/components/Dialog/subComponents/Text.js +3 -1
  50. package/dist/components/EmptyState/index.cjs +92 -0
  51. package/dist/components/EmptyState/index.js +58 -50
  52. package/dist/components/Expandable/index.cjs +77 -0
  53. package/dist/components/Expandable/index.js +19 -23
  54. package/dist/components/GlobalAlert/GlobalAlertLink.cjs +23 -0
  55. package/dist/components/GlobalAlert/GlobalAlertLink.js +4 -20
  56. package/dist/components/GlobalAlert/index.cjs +61 -0
  57. package/dist/components/GlobalAlert/index.js +34 -87
  58. package/dist/components/LineChart/CustomLegend.cjs +115 -0
  59. package/dist/components/LineChart/CustomLegend.js +76 -72
  60. package/dist/components/LineChart/Tooltip.cjs +37 -0
  61. package/dist/components/LineChart/Tooltip.js +26 -37
  62. package/dist/components/LineChart/helpers.cjs +52 -0
  63. package/dist/components/LineChart/helpers.js +11 -9
  64. package/dist/components/LineChart/index.cjs +101 -0
  65. package/dist/components/LineChart/index.js +38 -55
  66. package/dist/components/Link/index.cjs +130 -0
  67. package/dist/components/Link/index.js +86 -125
  68. package/dist/components/List/Body.cjs +18 -0
  69. package/dist/components/List/Body.js +12 -7
  70. package/dist/components/List/Cell.cjs +43 -0
  71. package/dist/components/List/Cell.js +36 -33
  72. package/dist/components/List/HeaderCell.cjs +84 -0
  73. package/dist/components/List/HeaderCell.js +54 -68
  74. package/dist/components/List/HeaderRow.cjs +38 -0
  75. package/dist/components/List/HeaderRow.js +16 -18
  76. package/dist/components/List/ListContext.cjs +136 -0
  77. package/dist/components/List/ListContext.js +68 -87
  78. package/dist/components/List/Row.cjs +163 -0
  79. package/dist/components/List/Row.js +136 -169
  80. package/dist/components/List/SelectBar.cjs +54 -0
  81. package/dist/components/List/SelectBar.js +31 -14
  82. package/dist/components/List/SkeletonRows.cjs +57 -0
  83. package/dist/components/List/SkeletonRows.js +42 -23
  84. package/dist/components/List/constants.cjs +6 -0
  85. package/dist/components/List/index.cjs +62 -0
  86. package/dist/components/List/index.js +39 -59
  87. package/dist/components/Loader/index.cjs +79 -0
  88. package/dist/components/Loader/index.js +44 -65
  89. package/dist/components/Menu/Item.cjs +92 -0
  90. package/dist/components/Menu/Item.js +52 -62
  91. package/dist/components/Menu/index.cjs +118 -0
  92. package/dist/components/Menu/index.js +105 -171
  93. package/dist/components/MenuV2/Group.cjs +23 -0
  94. package/dist/components/MenuV2/Group.js +14 -16
  95. package/dist/components/MenuV2/Item.cjs +114 -0
  96. package/dist/components/MenuV2/Item.js +67 -74
  97. package/dist/components/MenuV2/index.cjs +92 -0
  98. package/dist/components/MenuV2/index.js +76 -110
  99. package/dist/components/Meter/index.cjs +65 -0
  100. package/dist/components/Meter/index.js +44 -57
  101. package/dist/components/Modal/Dialog.cjs +143 -0
  102. package/dist/components/Modal/Dialog.js +44 -100
  103. package/dist/components/Modal/Disclosure.cjs +44 -0
  104. package/dist/components/Modal/constants.cjs +52 -0
  105. package/dist/components/Modal/index.cjs +81 -0
  106. package/dist/components/Modal/index.js +23 -58
  107. package/dist/components/Notice/index.cjs +25 -0
  108. package/dist/components/Notice/index.js +13 -29
  109. package/dist/components/Notification/index.cjs +49 -0
  110. package/dist/components/Notification/index.js +9 -48
  111. package/dist/components/Notification/react-toastify.css.cjs +3 -0
  112. package/dist/components/NumberInput/helpers.cjs +10 -0
  113. package/dist/components/NumberInput/index.cjs +264 -0
  114. package/dist/components/NumberInput/index.js +113 -200
  115. package/dist/components/NumberInputV2/index.cjs +223 -0
  116. package/dist/components/NumberInputV2/index.js +200 -349
  117. package/dist/components/Pagination/getPageNumbers.cjs +23 -0
  118. package/dist/components/Pagination/getPageNumbers.js +3 -1
  119. package/dist/components/Pagination/index.cjs +90 -0
  120. package/dist/components/Pagination/index.js +45 -81
  121. package/dist/components/PasswordCheck/index.cjs +26 -0
  122. package/dist/components/PasswordCheck/index.js +10 -15
  123. package/dist/components/PasswordStrengthMeter/index.cjs +98 -0
  124. package/dist/components/PasswordStrengthMeter/index.js +66 -68
  125. package/dist/components/PieChart/Legends.cjs +143 -0
  126. package/dist/components/PieChart/Legends.js +121 -99
  127. package/dist/components/PieChart/Tooltip.cjs +50 -0
  128. package/dist/components/PieChart/Tooltip.js +35 -15
  129. package/dist/components/PieChart/index.cjs +103 -0
  130. package/dist/components/PieChart/index.js +68 -87
  131. package/dist/components/Popover/index.cjs +102 -0
  132. package/dist/components/Popover/index.js +57 -106
  133. package/dist/components/Popup/animations.cjs +25 -0
  134. package/dist/components/Popup/helpers.cjs +216 -0
  135. package/dist/components/Popup/helpers.js +24 -12
  136. package/dist/components/Popup/index.cjs +299 -0
  137. package/dist/components/Popup/index.js +263 -351
  138. package/dist/components/ProgressBar/index.cjs +55 -0
  139. package/dist/components/ProgressBar/index.js +33 -51
  140. package/dist/components/Radio/index.cjs +135 -0
  141. package/dist/components/Radio/index.js +119 -188
  142. package/dist/components/RadioGroup/index.cjs +101 -0
  143. package/dist/components/RadioGroup/index.js +46 -51
  144. package/dist/components/Row/index.cjs +36 -0
  145. package/dist/components/Row/index.js +11 -20
  146. package/dist/components/SelectInput/index.cjs +520 -0
  147. package/dist/components/SelectInput/index.js +165 -212
  148. package/dist/components/SelectInputV2/Dropdown.cjs +431 -0
  149. package/dist/components/SelectInputV2/Dropdown.js +233 -473
  150. package/dist/components/SelectInputV2/DropdownOption.cjs +64 -0
  151. package/dist/components/SelectInputV2/DropdownOption.js +44 -115
  152. package/dist/components/SelectInputV2/SearchBarDropdown.cjs +109 -0
  153. package/dist/components/SelectInputV2/SearchBarDropdown.js +28 -44
  154. package/dist/components/SelectInputV2/SelectBar.cjs +226 -0
  155. package/dist/components/SelectInputV2/SelectBar.js +137 -240
  156. package/dist/components/SelectInputV2/SelectInputProvider.cjs +171 -0
  157. package/dist/components/SelectInputV2/SelectInputProvider.js +45 -77
  158. package/dist/components/SelectInputV2/findOptionInOptions.cjs +12 -0
  159. package/dist/components/SelectInputV2/index.cjs +89 -0
  160. package/dist/components/SelectInputV2/index.js +39 -98
  161. package/dist/components/SelectInputV2/types.cjs +13 -0
  162. package/dist/components/SelectableCard/index.cjs +139 -0
  163. package/dist/components/SelectableCard/index.js +127 -183
  164. package/dist/components/SelectableCardGroup/index.cjs +109 -0
  165. package/dist/components/SelectableCardGroup/index.js +50 -55
  166. package/dist/components/Separator/index.cjs +58 -0
  167. package/dist/components/Separator/index.js +44 -64
  168. package/dist/components/Skeleton/Block.cjs +40 -0
  169. package/dist/components/Skeleton/Block.js +28 -20
  170. package/dist/components/Skeleton/Blocks.cjs +40 -0
  171. package/dist/components/Skeleton/Blocks.js +26 -16
  172. package/dist/components/Skeleton/BoxWithIcon.cjs +38 -0
  173. package/dist/components/Skeleton/BoxWithIcon.js +24 -17
  174. package/dist/components/Skeleton/Donut.cjs +63 -0
  175. package/dist/components/Skeleton/Donut.js +46 -21
  176. package/dist/components/Skeleton/IconSkeleton.cjs +24 -0
  177. package/dist/components/Skeleton/IconSkeleton.js +19 -9
  178. package/dist/components/Skeleton/Line.cjs +18 -0
  179. package/dist/components/Skeleton/Line.js +11 -8
  180. package/dist/components/Skeleton/List.cjs +58 -0
  181. package/dist/components/Skeleton/List.js +48 -21
  182. package/dist/components/Skeleton/Slider.cjs +42 -0
  183. package/dist/components/Skeleton/Slider.js +36 -22
  184. package/dist/components/Skeleton/Square.cjs +14 -0
  185. package/dist/components/Skeleton/Square.js +9 -7
  186. package/dist/components/Skeleton/index.cjs +81 -0
  187. package/dist/components/Skeleton/index.js +38 -45
  188. package/dist/components/Snippet/index.cjs +184 -0
  189. package/dist/components/Snippet/index.js +139 -128
  190. package/dist/components/Stack/index.cjs +31 -0
  191. package/dist/components/Stack/index.js +10 -17
  192. package/dist/components/Status/index.cjs +74 -0
  193. package/dist/components/Status/index.js +42 -27
  194. package/dist/components/StepList/index.cjs +60 -0
  195. package/dist/components/StepList/index.js +34 -45
  196. package/dist/components/Stepper/index.cjs +147 -0
  197. package/dist/components/Stepper/index.js +106 -114
  198. package/dist/components/SwitchButton/FocusOverlay.cjs +40 -0
  199. package/dist/components/SwitchButton/FocusOverlay.js +18 -27
  200. package/dist/components/SwitchButton/index.cjs +78 -0
  201. package/dist/components/SwitchButton/index.js +39 -103
  202. package/dist/components/Table/Body.cjs +7 -0
  203. package/dist/components/Table/Body.js +3 -1
  204. package/dist/components/Table/Cell.cjs +21 -0
  205. package/dist/components/Table/Cell.js +15 -6
  206. package/dist/components/Table/Header.cjs +18 -0
  207. package/dist/components/Table/Header.js +12 -5
  208. package/dist/components/Table/HeaderCell.cjs +82 -0
  209. package/dist/components/Table/HeaderCell.js +48 -91
  210. package/dist/components/Table/HeaderRow.cjs +23 -0
  211. package/dist/components/Table/HeaderRow.js +11 -13
  212. package/dist/components/Table/Row.cjs +82 -0
  213. package/dist/components/Table/Row.js +39 -44
  214. package/dist/components/Table/SelectBar.cjs +54 -0
  215. package/dist/components/Table/SelectBar.js +31 -14
  216. package/dist/components/Table/SkeletonRows.cjs +56 -0
  217. package/dist/components/Table/SkeletonRows.js +43 -11
  218. package/dist/components/Table/TableContext.cjs +88 -0
  219. package/dist/components/Table/TableContext.js +29 -44
  220. package/dist/components/Table/index.cjs +69 -0
  221. package/dist/components/Table/index.js +37 -51
  222. package/dist/components/Tabs/Tab.cjs +122 -0
  223. package/dist/components/Tabs/Tab.js +108 -158
  224. package/dist/components/Tabs/TabMenu.cjs +64 -0
  225. package/dist/components/Tabs/TabMenu.js +52 -53
  226. package/dist/components/Tabs/TabMenuItem.cjs +36 -0
  227. package/dist/components/Tabs/TabMenuItem.js +19 -24
  228. package/dist/components/Tabs/TabsContext.cjs +7 -0
  229. package/dist/components/Tabs/TabsContext.js +1 -3
  230. package/dist/components/Tabs/index.cjs +104 -0
  231. package/dist/components/Tabs/index.js +44 -79
  232. package/dist/components/Tag/index.cjs +147 -0
  233. package/dist/components/Tag/index.js +66 -75
  234. package/dist/components/TagInput/index.cjs +255 -0
  235. package/dist/components/TagInput/index.js +125 -188
  236. package/dist/components/TagList/index.cjs +100 -0
  237. package/dist/components/TagList/index.js +51 -56
  238. package/dist/components/Text/index.cjs +84 -0
  239. package/dist/components/Text/index.js +10 -35
  240. package/dist/components/TextArea/index.cjs +160 -0
  241. package/dist/components/TextArea/index.js +140 -208
  242. package/dist/components/TextInput/index.cjs +390 -0
  243. package/dist/components/TextInput/index.js +326 -411
  244. package/dist/components/TextInputV2/index.cjs +192 -0
  245. package/dist/components/TextInputV2/index.js +170 -294
  246. package/dist/components/TimeInput/index.cjs +28 -0
  247. package/dist/components/TimeInput/index.js +3 -174
  248. package/dist/components/Toaster/index.cjs +85 -0
  249. package/dist/components/Toaster/index.js +26 -74
  250. package/dist/components/Toaster/react-toastify.css.cjs +3 -0
  251. package/dist/components/Toggle/index.cjs +138 -0
  252. package/dist/components/Toggle/index.js +112 -172
  253. package/dist/components/ToggleGroup/index.cjs +98 -0
  254. package/dist/components/ToggleGroup/index.js +44 -35
  255. package/dist/components/Tooltip/index.cjs +42 -0
  256. package/dist/components/Tooltip/index.js +34 -41
  257. package/dist/components/VerificationCode/index.cjs +219 -0
  258. package/dist/components/VerificationCode/index.js +58 -63
  259. package/dist/helpers/isJSON.cjs +10 -0
  260. package/dist/helpers/legend.cjs +14 -0
  261. package/dist/helpers/legend.js +4 -4
  262. package/dist/helpers/recursivelyGetChildrenString.cjs +14 -0
  263. package/dist/hooks/useIsOverflowing.cjs +23 -0
  264. package/dist/index.cjs +196 -0
  265. package/dist/theme/index.cjs +34 -0
  266. package/dist/theme/index.js +10 -13
  267. package/dist/utils/animations.cjs +276 -0
  268. package/dist/utils/capitalize.cjs +3 -0
  269. package/dist/utils/ids.cjs +8 -0
  270. package/dist/utils/ids.js +3 -1
  271. package/dist/utils/normalize.cjs +36 -0
  272. package/dist/utils/responsive/Breakpoint.cjs +16 -0
  273. package/dist/utils/responsive/Breakpoint.js +8 -6
  274. package/dist/utils/responsive/utilities.cjs +15 -0
  275. package/package.json +23 -7
@@ -0,0 +1,390 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@emotion/react/jsx-runtime");
4
+ const _styled = require("@emotion/styled/base");
5
+ const react = require("@emotion/react");
6
+ const randomName = require("@scaleway/random-name");
7
+ const icons = require("@ultraviolet/icons");
8
+ const React = require("react");
9
+ const index$4 = require("../Button/index.cjs");
10
+ const index$5 = require("../Expandable/index.cjs");
11
+ const index$1 = require("../Notice/index.cjs");
12
+ const index = require("../Separator/index.cjs");
13
+ const index$2 = require("../Stack/index.cjs");
14
+ const index$3 = require("../Text/index.cjs");
15
+ const _interopDefaultCompat = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
16
+ const _styled__default = /* @__PURE__ */ _interopDefaultCompat(_styled);
17
+ const randomName__default = /* @__PURE__ */ _interopDefaultCompat(randomName);
18
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() {
19
+ return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).";
20
+ }
21
+ const inputSizes = {
22
+ medium: {
23
+ default: `
24
+ height: 48px;
25
+ padding-left: 8px;
26
+ padding-right: 20px;
27
+ padding-top: 14px;
28
+ `,
29
+ full: `
30
+ padding: 8px;
31
+ `
32
+ },
33
+ small: {
34
+ default: `
35
+ height: 30px;
36
+ padding-left: 8px;
37
+ padding-right: 8px;
38
+ padding-top: 14px;
39
+ font-size: 14px;
40
+ `,
41
+ full: `
42
+ padding: 4px 8px;
43
+ `
44
+ }
45
+ };
46
+ const StyledSeparator = /* @__PURE__ */ _styled__default.default(index.Separator, process.env.NODE_ENV === "production" ? {
47
+ target: "el3h3g98"
48
+ } : {
49
+ target: "el3h3g98",
50
+ label: "StyledSeparator"
51
+ })("margin:1px 0px;height:calc(100% - 2px);background-color:", ({
52
+ theme: {
53
+ colors
54
+ }
55
+ }) => colors.neutral.backgroundStrong, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMER5QyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
56
+ var _ref2 = process.env.NODE_ENV === "production" ? {
57
+ name: "176jwhy",
58
+ styles: "pointer-events:auto;>button{box-shadow:none!important;}"
59
+ } : {
60
+ name: "17s4cfn-StyledRightElement",
61
+ styles: "pointer-events:auto;>button{box-shadow:none!important;};label:StyledRightElement;",
62
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0ZPIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHJhbmRvbU5hbWUgZnJvbSAnQHNjYWxld2F5L3JhbmRvbS1uYW1lJ1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB0eXBlIHtcbiAgQ2hhbmdlRXZlbnQsXG4gIEZvY3VzRXZlbnRIYW5kbGVyLFxuICBJbnB1dEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTGFiZWxIVE1MQXR0cmlidXRlcyxcbiAgVGV4dGFyZWFIVE1MQXR0cmlidXRlcyxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBmb3J3YXJkUmVmLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJbXBlcmF0aXZlSGFuZGxlLFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJy4uL0J1dHRvbidcbmltcG9ydCB7IEV4cGFuZGFibGUgfSBmcm9tICcuLi9FeHBhbmRhYmxlJ1xuaW1wb3J0IHsgTm90aWNlIH0gZnJvbSAnLi4vTm90aWNlJ1xuaW1wb3J0IHsgU2VwYXJhdG9yIH0gZnJvbSAnLi4vU2VwYXJhdG9yJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9UZXh0J1xuXG5jb25zdCBpbnB1dFNpemVzID0ge1xuICBtZWRpdW06IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICBgLFxuICAgIGZ1bGw6IGBcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICBgLFxuICB9LFxuICBzbWFsbDoge1xuICAgIGRlZmF1bHQ6IGBcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgIGAsXG4gIH0sXG59XG5cbnR5cGUgVGV4dElucHV0U2l6ZXMgPSBrZXlvZiB0eXBlb2YgaW5wdXRTaXplc1xuXG5leHBvcnQgY29uc3QgdGV4dElucHV0U2l6ZXMgPSBPYmplY3Qua2V5cyhpbnB1dFNpemVzKSBhcyBUZXh0SW5wdXRTaXplc1tdXG5cbmNvbnN0IFN0eWxlZFNlcGFyYXRvciA9IHN0eWxlZChTZXBhcmF0b3IpYFxuICBtYXJnaW46IDFweCAwcHg7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMnB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmRTdHJvbmd9O1xuYFxudHlwZSBTdHlsZWRSaWdodEVsZW1lbnRQcm9wcyA9IHtcbiAgZWRpdD86IGJvb2xlYW5cbiAgdG91Y2hhYmxlPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZWRSaWdodEVsZW1lbnQgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnZWRpdCcsICd0b3VjaGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZFJpZ2h0RWxlbWVudFByb3BzPmBcbiAgJHsoeyB0aGVtZTogeyBjb2xvcnMsIHNwYWNlIH0gfSkgPT4gY3NzYFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDAgJHtzcGFjZVsnMSddfTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogJHtzcGFjZVsnMSddfTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRyYW5zaXRpb246XG4gICAgICB0cmFuc2Zvcm0gMTUwbXMsXG4gICAgICBjb2xvciAxNTBtcztcbiAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHRXZWFrSG92ZXJ9O1xuICAgIH1cbiAgYH1cblxuICAkeyh7IHRvdWNoYWJsZSB9KSA9PlxuICAgIHRvdWNoYWJsZSAmJlxuICAgIGNzc2BcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgPiBidXR0b24ge1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgYH1cbmBcbnR5cGUgU3R5bGVkTGFiZWxQcm9wcyA9IHtcbiAgJ2FyaWEtbGFiZWwnPzogc3RyaW5nXG4gICdhcmlhLWxpdmUnOiBzdHJpbmdcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIGVkaXQ/OiBib29sZWFuXG4gIGVycm9yPzogYm9vbGVhblxuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxufSAmIExhYmVsSFRNTEF0dHJpYnV0ZXM8SFRNTExhYmVsRWxlbWVudD5cblxuY29uc3QgU3R5bGVkTGFiZWwgPSBzdHlsZWQoJ2xhYmVsJywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbJ2VkaXQnLCAnZXJyb3InLCAncmVzaXphYmxlJywgJ2ZpbGxBdmFpbGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZExhYmVsUHJvcHM+YFxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0OHB4O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUudHlwb2dyYXBoeS5ib2R5U21hbGx9O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEycHgpIHNjYWxlKDEpO1xuXG4gICR7KHsgZWRpdCB9KSA9PlxuICAgIGVkaXQgJiZcbiAgICBjc3NgXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOS42JSwgLTNweCkgc2NhbGUoMC44KTtcbiAgICBgfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyByZWFkT25seSwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICByZWFkT25seSAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07XG4gICAgYH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLmRhbmdlci50ZXh0fTtcbiAgICBgfVxuYFxuXG5jb25zdCBTdHlsZWRSZWxhdGl2ZURpdiA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmBcblxuY29uc3QgU3R5bGVkRXJyb3IgPSBzdHlsZWQuZGl2YFxuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIudGV4dH07XG4gIHBhZGRpbmctdG9wOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycwLjI1J119O1xuYFxuXG5jb25zdCBTdHlsZWROb3RpY2UgPSBzdHlsZWQoTm90aWNlKWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC41J119O1xuYFxuXG50eXBlIFN0eWxlZElucHV0UHJvcHMgPSB7XG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgaGFzTGFiZWw/OiBib29sZWFuXG4gIHBhZGRpbmdSaWdodEZhY3RvcjogbnVtYmVyXG4gIGlzUGxhY2Vob2xkZXJWaXNpYmxlPzogYm9vbGVhblxuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgaW5wdXRTaXplOiBUZXh0SW5wdXRTaXplc1xuICB1bml0Pzogc3RyaW5nXG4gIHJpZ2h0Q29tcG9uZW50TGVuZ3RoOiBudW1iZXJcbn0gJiAoXG4gIHwgSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlxuICB8IFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD5cbilcblxudHlwZSBJbnB1dFByb3BzID0gT21pdDxcbiAgRXhjbHVkZTxTdHlsZWRJbnB1dFByb3BzLCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+PixcbiAgJ2lucHV0U2l6ZSdcbj5cblxuY29uc3QgU3R5bGVkSW5wdXQgPSBzdHlsZWQoJ2lucHV0Jywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbXG4gICAgICAnYXMnLFxuICAgICAgJ2Vycm9yJyxcbiAgICAgICdmaWxsQXZhaWxhYmxlJyxcbiAgICAgICdoYXNMYWJlbCcsXG4gICAgICAnaXNQbGFjZWhvbGRlclZpc2libGUnLFxuICAgICAgJ211bHRpbGluZScsXG4gICAgICAncmVzaXphYmxlJyxcbiAgICAgICdpbnB1dFNpemUnLFxuICAgICAgJ3BhZGRpbmdSaWdodEZhY3RvcicsXG4gICAgICAncmlnaHRDb21wb25lbnRMZW5ndGgnLFxuICAgICAgJ3VuaXQnLFxuICAgIF0uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRJbnB1dFByb3BzPmBcbiAgdHJhbnNpdGlvbjpcbiAgICBib3JkZXItY29sb3IgMC4ycyBlYXNlLFxuICAgIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmR9O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJvcmRlcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHsgdGhlbWU6IHsgcmFkaWkgfSB9KSA9PiByYWRpaS5kZWZhdWx0fTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dH07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy1yaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHRXZWFrfTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR7KHsgdGhlbWU6IHsgc2hhZG93cyB9IH0pID0+IHNoYWRvd3MuZm9jdXNQcmltYXJ5fTtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLnByaW1hcnkuYm9yZGVySG92ZXJ9O1xuICB9XG5cbiAgJHsoeyBpc1BsYWNlaG9sZGVyVmlzaWJsZSB9KSA9PlxuICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlICYmXG4gICAgYCY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfWB9XG5cbiAgJHsoeyBkaXNhYmxlZCwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBkaXNhYmxlZCAmJlxuICAgIGBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dH07YH1cblxuICAkeyh7IGlucHV0U2l6ZSB9KSA9PiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmRlZmF1bHR9XG5cbiAgJHsoeyBpbnB1dFNpemUsIGhhc0xhYmVsIH0pID0+XG4gICAgISFpbnB1dFNpemUgJiYgIWhhc0xhYmVsICYmIGlucHV0U2l6ZXNbaW5wdXRTaXplXT8uZnVsbH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMsIHNoYWRvd3MgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgYGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlcn07XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAke2NvbG9ycy5kYW5nZXIuYm9yZGVySG92ZXJ9O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogJHtzaGFkb3dzLmZvY3VzRGFuZ2VyfTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9YH1cblxuICAgICR7KHsgbXVsdGlsaW5lLCByZXNpemFibGUsIGZpbGxBdmFpbGFibGUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgaGVpZ2h0OiAke2ZpbGxBdmFpbGFibGUgPyAnMTAwJScgOiAnaW5pdGlhbCd9O1xuICAgIHJlc2l6ZTogJHtyZXNpemFibGUgPT09IGZhbHNlID8gJ25vbmUnIDogJ3ZlcnRpY2FsJ307XG4gIGB9XG5cbiAgJHsoeyBtdWx0aWxpbmUsIGhhc0xhYmVsLCB0aGVtZSB9KSA9PlxuICAgIG11bHRpbGluZSAmJlxuICAgICFoYXNMYWJlbCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXRvcDogJHt0aGVtZS5zcGFjZVsnMSddfTtcbiAgYH1cblxuICAkeyh7IHBhZGRpbmdSaWdodEZhY3RvciwgcmlnaHRDb21wb25lbnRMZW5ndGgsIHVuaXQsIHRoZW1lIH0pID0+XG4gICAgcGFkZGluZ1JpZ2h0RmFjdG9yID4gMCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCR7XG4gICAgICB1bml0ID8gYCR7dW5pdC5sZW5ndGh9ICogJHt0aGVtZS5zcGFjZVsnMSddfSArIGAgOiAnJ1xuICAgIH0ke1xuICAgICAgcGFkZGluZ1JpZ2h0RmFjdG9yICtcbiAgICAgICh1bml0ID8gcmlnaHRDb21wb25lbnRMZW5ndGggLSAxIDogcmlnaHRDb21wb25lbnRMZW5ndGgpXG4gICAgfSAqICR7dGhlbWUuc3BhY2VbJzQnXX0pO1xuICBgfVxuYFxuXG5jb25zdCBSaWdodENvbXBvbmVudCA9IHN0eWxlZChTdGFjaylgXG4gIG1pbi13aWR0aDogMjRweDtcbmBcblxudHlwZSBUZXh0SW5wdXRQcm9wcyA9IHtcbiAgJ2RhdGEtdGVzdGlkJz86IHN0cmluZ1xuICBhcmlhQ29udHJvbHM/OiBzdHJpbmdcbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nXG4gIGF1dG9Gb2N1cz86IGJvb2xlYW5cbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gIGNvbHM/OiBudW1iZXJcbiAgZGVmYXVsdFZhbHVlPzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IHN0cmluZ1xuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxuICBnZW5lcmF0ZWQ/OiBib29sZWFuXG4gIGhlaWdodD86IHN0cmluZyB8IG51bWJlclxuICBpZD86IHN0cmluZ1xuICBsYWJlbD86IHN0cmluZ1xuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIG5hbWU/OiBzdHJpbmdcbiAgbm90aWNlPzogc3RyaW5nXG4gIG5vVG9wTGFiZWw/OiBib29sZWFuXG4gIG9uQmx1cj86IEZvY3VzRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbkNoYW5nZT86ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkXG4gIG9uRm9jdXM/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlVcD86IEtleWJvYXJkRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgcmFuZG9tPzogc3RyaW5nXG4gIHJlYWRPbmx5PzogYm9vbGVhblxuICByZXF1aXJlZD86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICByb3dzPzogbnVtYmVyXG4gIHNpemU/OiBUZXh0SW5wdXRTaXplc1xuICB0YWJJbmRleD86IG51bWJlclxuICB0eXBlPzogc3RyaW5nXG4gIHVuaXQ/OiBzdHJpbmdcbiAgdmFsaWQ/OiBib29sZWFuXG4gIHZhbHVlPzogc3RyaW5nIHwgbnVtYmVyXG4gIHdyYXA/OiBzdHJpbmdcbiAgaW5wdXRQcm9wcz86IElucHV0UHJvcHNcbiAgbWF4PzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWF4J11cbiAgbWluPzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWluJ11cbn0gJiAoXG4gIHwgT21pdDxJbnB1dEhUTUxBdHRyaWJ1dGVzPEhUTUxJbnB1dEVsZW1lbnQ+LCAnb25DaGFuZ2UnPlxuICB8IE9taXQ8VGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbilcblxuY29uc3QgVW5pdExhYmVsID0gc3R5bGVkKFRleHQpYFxuICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuYFxuXG4vKipcbiAqIFRleHRJbnB1dCBjb21wb25lbnQgYWxsb3dzIHVzZXJzIHRvIGlucHV0IHRleHQsIHdpdGggb3B0aW9ucyBmb3IgY3VzdG9taXphdGlvbiBhbmQgdmFsaWRhdGlvbi5cbiAqIEl0IHN1cHBvcnRzIHZhcmlvdXMgaW5wdXQgdHlwZXMgYW5kIHNob3VsZCBiZSBhcHByb3ByaWF0ZWx5IHNpemVkIHdpdGggY2xlYXIgbGFiZWxpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBUZXh0SW5wdXQgPSBmb3J3YXJkUmVmPFxuICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCB8IG51bGwsXG4gIFRleHRJbnB1dFByb3BzXG4+KFxuICAoXG4gICAge1xuICAgICAgJ2RhdGEtdGVzdGlkJzogZGF0YVRlc3RJZCxcbiAgICAgIGFyaWFDb250cm9scyxcbiAgICAgIGF1dG9Db21wbGV0ZSA9ICdvbicsXG4gICAgICBhdXRvRm9jdXMsXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBjb2xzLFxuICAgICAgZGVmYXVsdFZhbHVlLFxuICAgICAgZGlzYWJsZWQsXG4gICAgICBlZGl0OiBmb3JjZUVkaXQsXG4gICAgICBlcnJvcixcbiAgICAgIGZpbGxBdmFpbGFibGUsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoZWlnaHQsXG4gICAgICBpZCxcbiAgICAgIGxhYmVsLFxuICAgICAgbXVsdGlsaW5lLFxuICAgICAgbmFtZSxcbiAgICAgIG5vdGljZSxcbiAgICAgIG5vVG9wTGFiZWwgPSBmYWxzZSxcbiAgICAgIG9uQmx1cixcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgb25Gb2N1cyxcbiAgICAgIG9uS2V5VXAsXG4gICAgICBvbktleURvd24sXG4gICAgICBwbGFjZWhvbGRlcixcbiAgICAgIHJhbmRvbSxcbiAgICAgIHJlYWRPbmx5LFxuICAgICAgcmVxdWlyZWQsXG4gICAgICByZXNpemFibGUsXG4gICAgICByb3dzLFxuICAgICAgc2l6ZSA9ICdtZWRpdW0nLFxuICAgICAgdGFiSW5kZXgsXG4gICAgICB0eXBlID0gJ3RleHQnLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgdmFsdWUsXG4gICAgICB3cmFwLFxuICAgICAgaW5wdXRQcm9wcyxcbiAgICAgIG1pbixcbiAgICAgIG1heCxcbiAgICB9LFxuICAgIHJlZixcbiAgKSA9PiB7XG4gICAgY29uc3QgY29udHJvbFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKVxuXG4gICAgY29uc3QgW3Zpc2l0ZWQsIHNldFZpc2l0ZWRdID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bhc3N3b3JkVmlzaWJsZSwgc2V0UGFzc3dvcmRWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gc2V0UGFzc3dvcmRWaXNpYmxlKHggPT4gIXgpLFxuICAgICAgW10sXG4gICAgKVxuXG4gICAgLy8gRm9yd2FyZCByZWYgdG8gcGFyZW50IHJlZlxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGU8dW5rbm93biwgdW5rbm93bj4ocmVmLCAoKSA9PiBjb250cm9sUmVmLCBbXSlcblxuICAgIC8vIEZvY3VzIHdoZW4gcGFzc3dvcmQgaXMgdmlzaWJsZVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAocGFzc3dvcmRWaXNpYmxlKSB7XG4gICAgICAgIGNvbnRyb2xSZWY/LmN1cnJlbnQ/LmZvY3VzKClcbiAgICAgIH1cbiAgICB9LCBbcGFzc3dvcmRWaXNpYmxlXSlcblxuICAgIGNvbnN0IGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2sgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSgpLFxuICAgICAgW3RvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eV0sXG4gICAgKVxuXG4gICAgY29uc3QgcmFuZG9taXplID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiBvbkNoYW5nZT8uKHJhbmRvbU5hbWUocmFuZG9tKSksXG4gICAgICBbb25DaGFuZ2UsIHJhbmRvbV0sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2xpY2tSYW5kb21pemUgPSB1c2VDYWxsYmFjaygoKSA9PiByYW5kb21pemUoKSwgW3JhbmRvbWl6ZV0pXG5cbiAgICBjb25zdCBoYW5kbGVGb2N1czogRm9jdXNFdmVudEhhbmRsZXI8XG4gICAgICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudFxuICAgID4gPSB1c2VDYWxsYmFjayhcbiAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKCF2aXNpdGVkICYmICFyZWFkT25seSkge1xuICAgICAgICAgIHNldFZpc2l0ZWQodHJ1ZSlcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICAgICAgb25Gb2N1cyhldmVudClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFt2aXNpdGVkLCByZWFkT25seSwgb25Gb2N1c10sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gdXNlQ2FsbGJhY2soXG4gICAgICAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PikgPT5cbiAgICAgICAgb25DaGFuZ2U/LihldmVudC50YXJnZXQudmFsdWUpLFxuICAgICAgW29uQ2hhbmdlXSxcbiAgICApXG5cbiAgICBjb25zdCBpc1Bhc3NUb2dnbGVhYmxlID0gdHlwZSA9PT0gJ3RvZ2dsZWFibGUtcGFzc3dvcmQnXG4gICAgY29uc3QgaGFzTGFiZWwgPSAhIWxhYmVsICYmICFub1RvcExhYmVsICYmIHNpemUgPT09ICdtZWRpdW0nXG4gICAgY29uc3QgZWRpdCA9XG4gICAgICBoYXNMYWJlbCAmJiAoZm9yY2VFZGl0IHx8IHZpc2l0ZWQgfHwgdmFsdWUgfHwgZXJyb3IgfHwgZ2VuZXJhdGVkKVxuXG4gICAgY29uc3QgaXNQbGFjZWhvbGRlclZpc2libGUgPSAhaGFzTGFiZWwgfHwgISFlZGl0XG4gICAgY29uc3QgaGFzUmlnaHRFbGVtZW50ID0gISEoXG4gICAgICB2YWxpZCAhPT0gdW5kZWZpbmVkIHx8XG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlIHx8XG4gICAgICByYW5kb20gfHxcbiAgICAgIHVuaXRcbiAgICApXG5cbiAgICBjb25zdCBnZXRUeXBlID0gKCkgPT4ge1xuICAgICAgaWYgKGlzUGFzc1RvZ2dsZWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHBhc3N3b3JkVmlzaWJsZSB8fCBnZW5lcmF0ZWQgPyAndGV4dCcgOiAncGFzc3dvcmQnXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBtdWx0aWxpbmUgPyB1bmRlZmluZWQgOiB0eXBlXG4gICAgfVxuXG4gICAgY29uc3QgaW5wdXRTaXplID0gc2l6ZVxuXG4gICAgY29uc3QgcmlnaHRDb21wb25lbnRzQXJyYXkgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50cyA9IFtdXG5cbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlICYmICFnZW5lcmF0ZWQpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e1xuICAgICAgICAgICAgICBkYXRhVGVzdElkID8gYCR7ZGF0YVRlc3RJZH0tdmlzaWJpbGl0eS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPXtwYXNzd29yZFZpc2libGUgPyAnaGlkZScgOiAnc2hvdyd9XG4gICAgICAgICAgICBrZXk9XCJwYXNzd29yZC12aXNpYmxlXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2t9XG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBpY29uPXtwYXNzd29yZFZpc2libGUgPyAnZXllLW9mZicgOiAnZXllJ31cbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmIChyYW5kb20pIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAga2V5PVwicmFuZG9tXCJcbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXJhbmRvbWl6ZS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwicmFuZG9taXplXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsaWNrUmFuZG9taXplfVxuICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgaWNvbj1cImF1dG8tZml4XCJcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgICBzZW50aW1lbnQ9XCJuZXV0cmFsXCJcbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh2YWxpZCA9PT0gZmFsc2UgfHwgdmFsaWQgPT09IHRydWUpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEljb25cbiAgICAgICAgICAgIGtleT1cInZhbGlkXCJcbiAgICAgICAgICAgIG5hbWU9eyF2YWxpZCA/ICdjbG9zZScgOiAnY2hlY2snfVxuICAgICAgICAgICAgY29sb3I9eyF2YWxpZCA/ICdkYW5nZXInIDogJ3N1Y2Nlc3MnfVxuICAgICAgICAgICAgc2l6ZT17MjB9XG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh1bml0KSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxVbml0TGFiZWwga2V5PVwidW5pdFwiIHZhcmlhbnQ9XCJib2R5U21hbGxcIiBhcz1cInBcIiBwcm9taW5lbmNlPVwid2Vha1wiPlxuICAgICAgICAgICAge3VuaXR9XG4gICAgICAgICAgPC9Vbml0TGFiZWw+LFxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIHJldHVybiByaWdodENvbXBvbmVudHNcbiAgICB9LCBbXG4gICAgICBkaXNhYmxlZCxcbiAgICAgIGdlbmVyYXRlZCxcbiAgICAgIGhhbmRsZUNsaWNrUmFuZG9taXplLFxuICAgICAgaGFuZGxlUGFzc1Zpc2liaWxpdHlDbGljayxcbiAgICAgIGlzUGFzc1RvZ2dsZWFibGUsXG4gICAgICBwYXNzd29yZFZpc2libGUsXG4gICAgICByYW5kb20sXG4gICAgICB1bml0LFxuICAgICAgdmFsaWQsXG4gICAgICBkYXRhVGVzdElkLFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG93U2VwYXJhdG9yID0gKHJlcXVpcmVkICYmIGhhc1JpZ2h0RWxlbWVudCkgfHwgdW5pdFxuICAgIGNvbnN0IHBhZGRpbmdSaWdodEZhY3RvciA9IChyZXF1aXJlZCA/IDEgOiAwKSArIChzaG93U2VwYXJhdG9yID8gMC41IDogMClcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lfT5cbiAgICAgICAgPFN0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICAgIDxTdHlsZWRJbnB1dFxuICAgICAgICAgICAgYXJpYS1jb250cm9scz17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17bGFiZWwgfHwgdW5kZWZpbmVkfVxuICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtoYXNMYWJlbCA/IGFyaWFDb250cm9scyA6IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFzPXttdWx0aWxpbmUgPyAndGV4dGFyZWEnIDogJ2lucHV0J31cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17YXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXthdXRvRm9jdXN9XG4gICAgICAgICAgICBjb2xzPXtjb2xzfVxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e2RhdGFUZXN0SWR9XG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgZmlsbEF2YWlsYWJsZT17ZmlsbEF2YWlsYWJsZX1cbiAgICAgICAgICAgIGhhc0xhYmVsPXtoYXNMYWJlbH1cbiAgICAgICAgICAgIHBhZGRpbmdSaWdodEZhY3Rvcj17cGFkZGluZ1JpZ2h0RmFjdG9yfVxuICAgICAgICAgICAgcmlnaHRDb21wb25lbnRMZW5ndGg9e3JpZ2h0Q29tcG9uZW50c0FycmF5Lmxlbmd0aH1cbiAgICAgICAgICAgIHVuaXQ9e3VuaXR9XG4gICAgICAgICAgICBpZD17aWR9XG4gICAgICAgICAgICBpbnB1dFNpemU9e2lucHV0U2l6ZX1cbiAgICAgICAgICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlPXtpc1BsYWNlaG9sZGVyVmlzaWJsZX1cbiAgICAgICAgICAgIG11bHRpbGluZT17bXVsdGlsaW5lfVxuICAgICAgICAgICAgbmFtZT17bmFtZX1cbiAgICAgICAgICAgIG9uQmx1cj17b25CbHVyfVxuICAgICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgIG9uRm9jdXM9e2hhbmRsZUZvY3VzfVxuICAgICAgICAgICAgb25LZXlVcD17b25LZXlVcH1cbiAgICAgICAgICAgIG9uS2V5RG93bj17b25LZXlEb3dufVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgcmVmPXtjb250cm9sUmVmfVxuICAgICAgICAgICAgcmVzaXphYmxlPXtyZXNpemFibGV9XG4gICAgICAgICAgICByb3dzPXtyb3dzfVxuICAgICAgICAgICAgc3R5bGU9e3sgaGVpZ2h0IH19XG4gICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgICB0eXBlPXtnZXRUeXBlKCl9XG4gICAgICAgICAgICB2YWx1ZT17dmFsdWUgPT09IG51bGwgPyAnJyA6IHZhbHVlfVxuICAgICAgICAgICAgd3JhcD17d3JhcH1cbiAgICAgICAgICAgIG1pbj17bWlufVxuICAgICAgICAgICAgbWF4PXttYXh9XG4gICAgICAgICAgICByZXF1aXJlZD17cmVxdWlyZWR9XG4gICAgICAgICAgICB7Li4uaW5wdXRQcm9wc31cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtoYXNMYWJlbCAmJiAoXG4gICAgICAgICAgICA8U3R5bGVkTGFiZWxcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgZXJyb3I9eyEhZXJyb3J9XG4gICAgICAgICAgICAgIGlkPXthcmlhQ29udHJvbHN9XG4gICAgICAgICAgICAgIGh0bWxGb3I9e2lkfVxuICAgICAgICAgICAgICBhcmlhLWxpdmU9XCJhc3NlcnRpdmVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICA8L1N0eWxlZExhYmVsPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7aGFzUmlnaHRFbGVtZW50IHx8IHJlcXVpcmVkID8gKFxuICAgICAgICAgICAgPFN0eWxlZFJpZ2h0RWxlbWVudFxuICAgICAgICAgICAgICBlZGl0PXshIWVkaXR9XG4gICAgICAgICAgICAgIHRvdWNoYWJsZT17aXNQYXNzVG9nZ2xlYWJsZSB8fCAhIXJhbmRvbX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3JlcXVpcmVkID8gKFxuICAgICAgICAgICAgICAgIDxJY29uIG5hbWU9XCJhc3Rlcmlza1wiIGNvbG9yPVwiZGFuZ2VyXCIgc2l6ZT17MTB9IC8+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICB7c2hvd1NlcGFyYXRvciA/IDxTdHlsZWRTZXBhcmF0b3IgZGlyZWN0aW9uPVwidmVydGljYWxcIiAvPiA6IG51bGx9XG4gICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgIDxSaWdodENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwicm93XCJcbiAgICAgICAgICAgICAgICAgIGFsaWduSXRlbXM9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheX1cbiAgICAgICAgICAgICAgICA8L1JpZ2h0Q29tcG9uZW50PlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvU3R5bGVkUmlnaHRFbGVtZW50PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICA8RXhwYW5kYWJsZSBvcGVuZWQ9eyEhZXJyb3J9PlxuICAgICAgICAgIDxTdHlsZWRFcnJvcj57ZXJyb3J9PC9TdHlsZWRFcnJvcj5cbiAgICAgICAgPC9FeHBhbmRhYmxlPlxuICAgICAgICB7bm90aWNlID8gPFN0eWxlZE5vdGljZT57bm90aWNlfTwvU3R5bGVkTm90aWNlPiA6IG51bGx9XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH0sXG4pXG4iXX0= */",
63
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
64
+ };
65
+ const StyledRightElement = /* @__PURE__ */ _styled__default.default("div", process.env.NODE_ENV === "production" ? {
66
+ shouldForwardProp: (prop) => !["edit", "touchable"].includes(prop),
67
+ target: "el3h3g97"
68
+ } : {
69
+ shouldForwardProp: (prop) => !["edit", "touchable"].includes(prop),
70
+ target: "el3h3g97",
71
+ label: "StyledRightElement"
72
+ })(({
73
+ theme: {
74
+ colors,
75
+ space
76
+ }
77
+ }) => /* @__PURE__ */ react.css("pointer-events:none;position:absolute;right:0;bottom:0;top:0;padding:0 ", space["1"], ";display:flex;gap:", space["1"], ";align-items:center;transition:transform 150ms,color 150ms;color:", colors.neutral.textWeak, ";&:hover,&:focus-within{color:", colors.neutral.textWeakHover, ";}" + (process.env.NODE_ENV === "production" ? "" : ";label:StyledRightElement;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0V5QyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */"), " ", ({
78
+ touchable
79
+ }) => touchable && _ref2, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUUyQiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
80
+ var _ref = process.env.NODE_ENV === "production" ? {
81
+ name: "z8qxmc",
82
+ styles: "transform:translate(-9.6%, -3px) scale(0.8)"
83
+ } : {
84
+ name: "136ci60-StyledLabel",
85
+ styles: "transform:translate(-9.6%, -3px) scale(0.8);label:StyledLabel;",
86
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0lPIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHJhbmRvbU5hbWUgZnJvbSAnQHNjYWxld2F5L3JhbmRvbS1uYW1lJ1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB0eXBlIHtcbiAgQ2hhbmdlRXZlbnQsXG4gIEZvY3VzRXZlbnRIYW5kbGVyLFxuICBJbnB1dEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTGFiZWxIVE1MQXR0cmlidXRlcyxcbiAgVGV4dGFyZWFIVE1MQXR0cmlidXRlcyxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBmb3J3YXJkUmVmLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJbXBlcmF0aXZlSGFuZGxlLFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJy4uL0J1dHRvbidcbmltcG9ydCB7IEV4cGFuZGFibGUgfSBmcm9tICcuLi9FeHBhbmRhYmxlJ1xuaW1wb3J0IHsgTm90aWNlIH0gZnJvbSAnLi4vTm90aWNlJ1xuaW1wb3J0IHsgU2VwYXJhdG9yIH0gZnJvbSAnLi4vU2VwYXJhdG9yJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9UZXh0J1xuXG5jb25zdCBpbnB1dFNpemVzID0ge1xuICBtZWRpdW06IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICBgLFxuICAgIGZ1bGw6IGBcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICBgLFxuICB9LFxuICBzbWFsbDoge1xuICAgIGRlZmF1bHQ6IGBcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgIGAsXG4gIH0sXG59XG5cbnR5cGUgVGV4dElucHV0U2l6ZXMgPSBrZXlvZiB0eXBlb2YgaW5wdXRTaXplc1xuXG5leHBvcnQgY29uc3QgdGV4dElucHV0U2l6ZXMgPSBPYmplY3Qua2V5cyhpbnB1dFNpemVzKSBhcyBUZXh0SW5wdXRTaXplc1tdXG5cbmNvbnN0IFN0eWxlZFNlcGFyYXRvciA9IHN0eWxlZChTZXBhcmF0b3IpYFxuICBtYXJnaW46IDFweCAwcHg7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMnB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmRTdHJvbmd9O1xuYFxudHlwZSBTdHlsZWRSaWdodEVsZW1lbnRQcm9wcyA9IHtcbiAgZWRpdD86IGJvb2xlYW5cbiAgdG91Y2hhYmxlPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZWRSaWdodEVsZW1lbnQgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnZWRpdCcsICd0b3VjaGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZFJpZ2h0RWxlbWVudFByb3BzPmBcbiAgJHsoeyB0aGVtZTogeyBjb2xvcnMsIHNwYWNlIH0gfSkgPT4gY3NzYFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDAgJHtzcGFjZVsnMSddfTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogJHtzcGFjZVsnMSddfTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRyYW5zaXRpb246XG4gICAgICB0cmFuc2Zvcm0gMTUwbXMsXG4gICAgICBjb2xvciAxNTBtcztcbiAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHRXZWFrSG92ZXJ9O1xuICAgIH1cbiAgYH1cblxuICAkeyh7IHRvdWNoYWJsZSB9KSA9PlxuICAgIHRvdWNoYWJsZSAmJlxuICAgIGNzc2BcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgPiBidXR0b24ge1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgYH1cbmBcbnR5cGUgU3R5bGVkTGFiZWxQcm9wcyA9IHtcbiAgJ2FyaWEtbGFiZWwnPzogc3RyaW5nXG4gICdhcmlhLWxpdmUnOiBzdHJpbmdcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIGVkaXQ/OiBib29sZWFuXG4gIGVycm9yPzogYm9vbGVhblxuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxufSAmIExhYmVsSFRNTEF0dHJpYnV0ZXM8SFRNTExhYmVsRWxlbWVudD5cblxuY29uc3QgU3R5bGVkTGFiZWwgPSBzdHlsZWQoJ2xhYmVsJywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbJ2VkaXQnLCAnZXJyb3InLCAncmVzaXphYmxlJywgJ2ZpbGxBdmFpbGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZExhYmVsUHJvcHM+YFxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0OHB4O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUudHlwb2dyYXBoeS5ib2R5U21hbGx9O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEycHgpIHNjYWxlKDEpO1xuXG4gICR7KHsgZWRpdCB9KSA9PlxuICAgIGVkaXQgJiZcbiAgICBjc3NgXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOS42JSwgLTNweCkgc2NhbGUoMC44KTtcbiAgICBgfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyByZWFkT25seSwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICByZWFkT25seSAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07XG4gICAgYH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLmRhbmdlci50ZXh0fTtcbiAgICBgfVxuYFxuXG5jb25zdCBTdHlsZWRSZWxhdGl2ZURpdiA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmBcblxuY29uc3QgU3R5bGVkRXJyb3IgPSBzdHlsZWQuZGl2YFxuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIudGV4dH07XG4gIHBhZGRpbmctdG9wOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycwLjI1J119O1xuYFxuXG5jb25zdCBTdHlsZWROb3RpY2UgPSBzdHlsZWQoTm90aWNlKWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC41J119O1xuYFxuXG50eXBlIFN0eWxlZElucHV0UHJvcHMgPSB7XG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgaGFzTGFiZWw/OiBib29sZWFuXG4gIHBhZGRpbmdSaWdodEZhY3RvcjogbnVtYmVyXG4gIGlzUGxhY2Vob2xkZXJWaXNpYmxlPzogYm9vbGVhblxuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgaW5wdXRTaXplOiBUZXh0SW5wdXRTaXplc1xuICB1bml0Pzogc3RyaW5nXG4gIHJpZ2h0Q29tcG9uZW50TGVuZ3RoOiBudW1iZXJcbn0gJiAoXG4gIHwgSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlxuICB8IFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD5cbilcblxudHlwZSBJbnB1dFByb3BzID0gT21pdDxcbiAgRXhjbHVkZTxTdHlsZWRJbnB1dFByb3BzLCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+PixcbiAgJ2lucHV0U2l6ZSdcbj5cblxuY29uc3QgU3R5bGVkSW5wdXQgPSBzdHlsZWQoJ2lucHV0Jywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbXG4gICAgICAnYXMnLFxuICAgICAgJ2Vycm9yJyxcbiAgICAgICdmaWxsQXZhaWxhYmxlJyxcbiAgICAgICdoYXNMYWJlbCcsXG4gICAgICAnaXNQbGFjZWhvbGRlclZpc2libGUnLFxuICAgICAgJ211bHRpbGluZScsXG4gICAgICAncmVzaXphYmxlJyxcbiAgICAgICdpbnB1dFNpemUnLFxuICAgICAgJ3BhZGRpbmdSaWdodEZhY3RvcicsXG4gICAgICAncmlnaHRDb21wb25lbnRMZW5ndGgnLFxuICAgICAgJ3VuaXQnLFxuICAgIF0uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRJbnB1dFByb3BzPmBcbiAgdHJhbnNpdGlvbjpcbiAgICBib3JkZXItY29sb3IgMC4ycyBlYXNlLFxuICAgIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmR9O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJvcmRlcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHsgdGhlbWU6IHsgcmFkaWkgfSB9KSA9PiByYWRpaS5kZWZhdWx0fTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dH07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy1yaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHRXZWFrfTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR7KHsgdGhlbWU6IHsgc2hhZG93cyB9IH0pID0+IHNoYWRvd3MuZm9jdXNQcmltYXJ5fTtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLnByaW1hcnkuYm9yZGVySG92ZXJ9O1xuICB9XG5cbiAgJHsoeyBpc1BsYWNlaG9sZGVyVmlzaWJsZSB9KSA9PlxuICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlICYmXG4gICAgYCY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfWB9XG5cbiAgJHsoeyBkaXNhYmxlZCwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBkaXNhYmxlZCAmJlxuICAgIGBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dH07YH1cblxuICAkeyh7IGlucHV0U2l6ZSB9KSA9PiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmRlZmF1bHR9XG5cbiAgJHsoeyBpbnB1dFNpemUsIGhhc0xhYmVsIH0pID0+XG4gICAgISFpbnB1dFNpemUgJiYgIWhhc0xhYmVsICYmIGlucHV0U2l6ZXNbaW5wdXRTaXplXT8uZnVsbH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMsIHNoYWRvd3MgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgYGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlcn07XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAke2NvbG9ycy5kYW5nZXIuYm9yZGVySG92ZXJ9O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogJHtzaGFkb3dzLmZvY3VzRGFuZ2VyfTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9YH1cblxuICAgICR7KHsgbXVsdGlsaW5lLCByZXNpemFibGUsIGZpbGxBdmFpbGFibGUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgaGVpZ2h0OiAke2ZpbGxBdmFpbGFibGUgPyAnMTAwJScgOiAnaW5pdGlhbCd9O1xuICAgIHJlc2l6ZTogJHtyZXNpemFibGUgPT09IGZhbHNlID8gJ25vbmUnIDogJ3ZlcnRpY2FsJ307XG4gIGB9XG5cbiAgJHsoeyBtdWx0aWxpbmUsIGhhc0xhYmVsLCB0aGVtZSB9KSA9PlxuICAgIG11bHRpbGluZSAmJlxuICAgICFoYXNMYWJlbCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXRvcDogJHt0aGVtZS5zcGFjZVsnMSddfTtcbiAgYH1cblxuICAkeyh7IHBhZGRpbmdSaWdodEZhY3RvciwgcmlnaHRDb21wb25lbnRMZW5ndGgsIHVuaXQsIHRoZW1lIH0pID0+XG4gICAgcGFkZGluZ1JpZ2h0RmFjdG9yID4gMCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCR7XG4gICAgICB1bml0ID8gYCR7dW5pdC5sZW5ndGh9ICogJHt0aGVtZS5zcGFjZVsnMSddfSArIGAgOiAnJ1xuICAgIH0ke1xuICAgICAgcGFkZGluZ1JpZ2h0RmFjdG9yICtcbiAgICAgICh1bml0ID8gcmlnaHRDb21wb25lbnRMZW5ndGggLSAxIDogcmlnaHRDb21wb25lbnRMZW5ndGgpXG4gICAgfSAqICR7dGhlbWUuc3BhY2VbJzQnXX0pO1xuICBgfVxuYFxuXG5jb25zdCBSaWdodENvbXBvbmVudCA9IHN0eWxlZChTdGFjaylgXG4gIG1pbi13aWR0aDogMjRweDtcbmBcblxudHlwZSBUZXh0SW5wdXRQcm9wcyA9IHtcbiAgJ2RhdGEtdGVzdGlkJz86IHN0cmluZ1xuICBhcmlhQ29udHJvbHM/OiBzdHJpbmdcbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nXG4gIGF1dG9Gb2N1cz86IGJvb2xlYW5cbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gIGNvbHM/OiBudW1iZXJcbiAgZGVmYXVsdFZhbHVlPzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IHN0cmluZ1xuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxuICBnZW5lcmF0ZWQ/OiBib29sZWFuXG4gIGhlaWdodD86IHN0cmluZyB8IG51bWJlclxuICBpZD86IHN0cmluZ1xuICBsYWJlbD86IHN0cmluZ1xuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIG5hbWU/OiBzdHJpbmdcbiAgbm90aWNlPzogc3RyaW5nXG4gIG5vVG9wTGFiZWw/OiBib29sZWFuXG4gIG9uQmx1cj86IEZvY3VzRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbkNoYW5nZT86ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkXG4gIG9uRm9jdXM/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlVcD86IEtleWJvYXJkRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgcmFuZG9tPzogc3RyaW5nXG4gIHJlYWRPbmx5PzogYm9vbGVhblxuICByZXF1aXJlZD86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICByb3dzPzogbnVtYmVyXG4gIHNpemU/OiBUZXh0SW5wdXRTaXplc1xuICB0YWJJbmRleD86IG51bWJlclxuICB0eXBlPzogc3RyaW5nXG4gIHVuaXQ/OiBzdHJpbmdcbiAgdmFsaWQ/OiBib29sZWFuXG4gIHZhbHVlPzogc3RyaW5nIHwgbnVtYmVyXG4gIHdyYXA/OiBzdHJpbmdcbiAgaW5wdXRQcm9wcz86IElucHV0UHJvcHNcbiAgbWF4PzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWF4J11cbiAgbWluPzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWluJ11cbn0gJiAoXG4gIHwgT21pdDxJbnB1dEhUTUxBdHRyaWJ1dGVzPEhUTUxJbnB1dEVsZW1lbnQ+LCAnb25DaGFuZ2UnPlxuICB8IE9taXQ8VGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbilcblxuY29uc3QgVW5pdExhYmVsID0gc3R5bGVkKFRleHQpYFxuICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuYFxuXG4vKipcbiAqIFRleHRJbnB1dCBjb21wb25lbnQgYWxsb3dzIHVzZXJzIHRvIGlucHV0IHRleHQsIHdpdGggb3B0aW9ucyBmb3IgY3VzdG9taXphdGlvbiBhbmQgdmFsaWRhdGlvbi5cbiAqIEl0IHN1cHBvcnRzIHZhcmlvdXMgaW5wdXQgdHlwZXMgYW5kIHNob3VsZCBiZSBhcHByb3ByaWF0ZWx5IHNpemVkIHdpdGggY2xlYXIgbGFiZWxpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBUZXh0SW5wdXQgPSBmb3J3YXJkUmVmPFxuICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCB8IG51bGwsXG4gIFRleHRJbnB1dFByb3BzXG4+KFxuICAoXG4gICAge1xuICAgICAgJ2RhdGEtdGVzdGlkJzogZGF0YVRlc3RJZCxcbiAgICAgIGFyaWFDb250cm9scyxcbiAgICAgIGF1dG9Db21wbGV0ZSA9ICdvbicsXG4gICAgICBhdXRvRm9jdXMsXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBjb2xzLFxuICAgICAgZGVmYXVsdFZhbHVlLFxuICAgICAgZGlzYWJsZWQsXG4gICAgICBlZGl0OiBmb3JjZUVkaXQsXG4gICAgICBlcnJvcixcbiAgICAgIGZpbGxBdmFpbGFibGUsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoZWlnaHQsXG4gICAgICBpZCxcbiAgICAgIGxhYmVsLFxuICAgICAgbXVsdGlsaW5lLFxuICAgICAgbmFtZSxcbiAgICAgIG5vdGljZSxcbiAgICAgIG5vVG9wTGFiZWwgPSBmYWxzZSxcbiAgICAgIG9uQmx1cixcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgb25Gb2N1cyxcbiAgICAgIG9uS2V5VXAsXG4gICAgICBvbktleURvd24sXG4gICAgICBwbGFjZWhvbGRlcixcbiAgICAgIHJhbmRvbSxcbiAgICAgIHJlYWRPbmx5LFxuICAgICAgcmVxdWlyZWQsXG4gICAgICByZXNpemFibGUsXG4gICAgICByb3dzLFxuICAgICAgc2l6ZSA9ICdtZWRpdW0nLFxuICAgICAgdGFiSW5kZXgsXG4gICAgICB0eXBlID0gJ3RleHQnLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgdmFsdWUsXG4gICAgICB3cmFwLFxuICAgICAgaW5wdXRQcm9wcyxcbiAgICAgIG1pbixcbiAgICAgIG1heCxcbiAgICB9LFxuICAgIHJlZixcbiAgKSA9PiB7XG4gICAgY29uc3QgY29udHJvbFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKVxuXG4gICAgY29uc3QgW3Zpc2l0ZWQsIHNldFZpc2l0ZWRdID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bhc3N3b3JkVmlzaWJsZSwgc2V0UGFzc3dvcmRWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gc2V0UGFzc3dvcmRWaXNpYmxlKHggPT4gIXgpLFxuICAgICAgW10sXG4gICAgKVxuXG4gICAgLy8gRm9yd2FyZCByZWYgdG8gcGFyZW50IHJlZlxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGU8dW5rbm93biwgdW5rbm93bj4ocmVmLCAoKSA9PiBjb250cm9sUmVmLCBbXSlcblxuICAgIC8vIEZvY3VzIHdoZW4gcGFzc3dvcmQgaXMgdmlzaWJsZVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAocGFzc3dvcmRWaXNpYmxlKSB7XG4gICAgICAgIGNvbnRyb2xSZWY/LmN1cnJlbnQ/LmZvY3VzKClcbiAgICAgIH1cbiAgICB9LCBbcGFzc3dvcmRWaXNpYmxlXSlcblxuICAgIGNvbnN0IGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2sgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSgpLFxuICAgICAgW3RvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eV0sXG4gICAgKVxuXG4gICAgY29uc3QgcmFuZG9taXplID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiBvbkNoYW5nZT8uKHJhbmRvbU5hbWUocmFuZG9tKSksXG4gICAgICBbb25DaGFuZ2UsIHJhbmRvbV0sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2xpY2tSYW5kb21pemUgPSB1c2VDYWxsYmFjaygoKSA9PiByYW5kb21pemUoKSwgW3JhbmRvbWl6ZV0pXG5cbiAgICBjb25zdCBoYW5kbGVGb2N1czogRm9jdXNFdmVudEhhbmRsZXI8XG4gICAgICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudFxuICAgID4gPSB1c2VDYWxsYmFjayhcbiAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKCF2aXNpdGVkICYmICFyZWFkT25seSkge1xuICAgICAgICAgIHNldFZpc2l0ZWQodHJ1ZSlcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICAgICAgb25Gb2N1cyhldmVudClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFt2aXNpdGVkLCByZWFkT25seSwgb25Gb2N1c10sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gdXNlQ2FsbGJhY2soXG4gICAgICAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PikgPT5cbiAgICAgICAgb25DaGFuZ2U/LihldmVudC50YXJnZXQudmFsdWUpLFxuICAgICAgW29uQ2hhbmdlXSxcbiAgICApXG5cbiAgICBjb25zdCBpc1Bhc3NUb2dnbGVhYmxlID0gdHlwZSA9PT0gJ3RvZ2dsZWFibGUtcGFzc3dvcmQnXG4gICAgY29uc3QgaGFzTGFiZWwgPSAhIWxhYmVsICYmICFub1RvcExhYmVsICYmIHNpemUgPT09ICdtZWRpdW0nXG4gICAgY29uc3QgZWRpdCA9XG4gICAgICBoYXNMYWJlbCAmJiAoZm9yY2VFZGl0IHx8IHZpc2l0ZWQgfHwgdmFsdWUgfHwgZXJyb3IgfHwgZ2VuZXJhdGVkKVxuXG4gICAgY29uc3QgaXNQbGFjZWhvbGRlclZpc2libGUgPSAhaGFzTGFiZWwgfHwgISFlZGl0XG4gICAgY29uc3QgaGFzUmlnaHRFbGVtZW50ID0gISEoXG4gICAgICB2YWxpZCAhPT0gdW5kZWZpbmVkIHx8XG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlIHx8XG4gICAgICByYW5kb20gfHxcbiAgICAgIHVuaXRcbiAgICApXG5cbiAgICBjb25zdCBnZXRUeXBlID0gKCkgPT4ge1xuICAgICAgaWYgKGlzUGFzc1RvZ2dsZWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHBhc3N3b3JkVmlzaWJsZSB8fCBnZW5lcmF0ZWQgPyAndGV4dCcgOiAncGFzc3dvcmQnXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBtdWx0aWxpbmUgPyB1bmRlZmluZWQgOiB0eXBlXG4gICAgfVxuXG4gICAgY29uc3QgaW5wdXRTaXplID0gc2l6ZVxuXG4gICAgY29uc3QgcmlnaHRDb21wb25lbnRzQXJyYXkgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50cyA9IFtdXG5cbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlICYmICFnZW5lcmF0ZWQpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e1xuICAgICAgICAgICAgICBkYXRhVGVzdElkID8gYCR7ZGF0YVRlc3RJZH0tdmlzaWJpbGl0eS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPXtwYXNzd29yZFZpc2libGUgPyAnaGlkZScgOiAnc2hvdyd9XG4gICAgICAgICAgICBrZXk9XCJwYXNzd29yZC12aXNpYmxlXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2t9XG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBpY29uPXtwYXNzd29yZFZpc2libGUgPyAnZXllLW9mZicgOiAnZXllJ31cbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmIChyYW5kb20pIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAga2V5PVwicmFuZG9tXCJcbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXJhbmRvbWl6ZS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwicmFuZG9taXplXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsaWNrUmFuZG9taXplfVxuICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgaWNvbj1cImF1dG8tZml4XCJcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgICBzZW50aW1lbnQ9XCJuZXV0cmFsXCJcbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh2YWxpZCA9PT0gZmFsc2UgfHwgdmFsaWQgPT09IHRydWUpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEljb25cbiAgICAgICAgICAgIGtleT1cInZhbGlkXCJcbiAgICAgICAgICAgIG5hbWU9eyF2YWxpZCA/ICdjbG9zZScgOiAnY2hlY2snfVxuICAgICAgICAgICAgY29sb3I9eyF2YWxpZCA/ICdkYW5nZXInIDogJ3N1Y2Nlc3MnfVxuICAgICAgICAgICAgc2l6ZT17MjB9XG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh1bml0KSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxVbml0TGFiZWwga2V5PVwidW5pdFwiIHZhcmlhbnQ9XCJib2R5U21hbGxcIiBhcz1cInBcIiBwcm9taW5lbmNlPVwid2Vha1wiPlxuICAgICAgICAgICAge3VuaXR9XG4gICAgICAgICAgPC9Vbml0TGFiZWw+LFxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIHJldHVybiByaWdodENvbXBvbmVudHNcbiAgICB9LCBbXG4gICAgICBkaXNhYmxlZCxcbiAgICAgIGdlbmVyYXRlZCxcbiAgICAgIGhhbmRsZUNsaWNrUmFuZG9taXplLFxuICAgICAgaGFuZGxlUGFzc1Zpc2liaWxpdHlDbGljayxcbiAgICAgIGlzUGFzc1RvZ2dsZWFibGUsXG4gICAgICBwYXNzd29yZFZpc2libGUsXG4gICAgICByYW5kb20sXG4gICAgICB1bml0LFxuICAgICAgdmFsaWQsXG4gICAgICBkYXRhVGVzdElkLFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG93U2VwYXJhdG9yID0gKHJlcXVpcmVkICYmIGhhc1JpZ2h0RWxlbWVudCkgfHwgdW5pdFxuICAgIGNvbnN0IHBhZGRpbmdSaWdodEZhY3RvciA9IChyZXF1aXJlZCA/IDEgOiAwKSArIChzaG93U2VwYXJhdG9yID8gMC41IDogMClcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lfT5cbiAgICAgICAgPFN0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICAgIDxTdHlsZWRJbnB1dFxuICAgICAgICAgICAgYXJpYS1jb250cm9scz17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17bGFiZWwgfHwgdW5kZWZpbmVkfVxuICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtoYXNMYWJlbCA/IGFyaWFDb250cm9scyA6IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFzPXttdWx0aWxpbmUgPyAndGV4dGFyZWEnIDogJ2lucHV0J31cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17YXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXthdXRvRm9jdXN9XG4gICAgICAgICAgICBjb2xzPXtjb2xzfVxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e2RhdGFUZXN0SWR9XG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgZmlsbEF2YWlsYWJsZT17ZmlsbEF2YWlsYWJsZX1cbiAgICAgICAgICAgIGhhc0xhYmVsPXtoYXNMYWJlbH1cbiAgICAgICAgICAgIHBhZGRpbmdSaWdodEZhY3Rvcj17cGFkZGluZ1JpZ2h0RmFjdG9yfVxuICAgICAgICAgICAgcmlnaHRDb21wb25lbnRMZW5ndGg9e3JpZ2h0Q29tcG9uZW50c0FycmF5Lmxlbmd0aH1cbiAgICAgICAgICAgIHVuaXQ9e3VuaXR9XG4gICAgICAgICAgICBpZD17aWR9XG4gICAgICAgICAgICBpbnB1dFNpemU9e2lucHV0U2l6ZX1cbiAgICAgICAgICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlPXtpc1BsYWNlaG9sZGVyVmlzaWJsZX1cbiAgICAgICAgICAgIG11bHRpbGluZT17bXVsdGlsaW5lfVxuICAgICAgICAgICAgbmFtZT17bmFtZX1cbiAgICAgICAgICAgIG9uQmx1cj17b25CbHVyfVxuICAgICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgIG9uRm9jdXM9e2hhbmRsZUZvY3VzfVxuICAgICAgICAgICAgb25LZXlVcD17b25LZXlVcH1cbiAgICAgICAgICAgIG9uS2V5RG93bj17b25LZXlEb3dufVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgcmVmPXtjb250cm9sUmVmfVxuICAgICAgICAgICAgcmVzaXphYmxlPXtyZXNpemFibGV9XG4gICAgICAgICAgICByb3dzPXtyb3dzfVxuICAgICAgICAgICAgc3R5bGU9e3sgaGVpZ2h0IH19XG4gICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgICB0eXBlPXtnZXRUeXBlKCl9XG4gICAgICAgICAgICB2YWx1ZT17dmFsdWUgPT09IG51bGwgPyAnJyA6IHZhbHVlfVxuICAgICAgICAgICAgd3JhcD17d3JhcH1cbiAgICAgICAgICAgIG1pbj17bWlufVxuICAgICAgICAgICAgbWF4PXttYXh9XG4gICAgICAgICAgICByZXF1aXJlZD17cmVxdWlyZWR9XG4gICAgICAgICAgICB7Li4uaW5wdXRQcm9wc31cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtoYXNMYWJlbCAmJiAoXG4gICAgICAgICAgICA8U3R5bGVkTGFiZWxcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgZXJyb3I9eyEhZXJyb3J9XG4gICAgICAgICAgICAgIGlkPXthcmlhQ29udHJvbHN9XG4gICAgICAgICAgICAgIGh0bWxGb3I9e2lkfVxuICAgICAgICAgICAgICBhcmlhLWxpdmU9XCJhc3NlcnRpdmVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICA8L1N0eWxlZExhYmVsPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7aGFzUmlnaHRFbGVtZW50IHx8IHJlcXVpcmVkID8gKFxuICAgICAgICAgICAgPFN0eWxlZFJpZ2h0RWxlbWVudFxuICAgICAgICAgICAgICBlZGl0PXshIWVkaXR9XG4gICAgICAgICAgICAgIHRvdWNoYWJsZT17aXNQYXNzVG9nZ2xlYWJsZSB8fCAhIXJhbmRvbX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3JlcXVpcmVkID8gKFxuICAgICAgICAgICAgICAgIDxJY29uIG5hbWU9XCJhc3Rlcmlza1wiIGNvbG9yPVwiZGFuZ2VyXCIgc2l6ZT17MTB9IC8+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICB7c2hvd1NlcGFyYXRvciA/IDxTdHlsZWRTZXBhcmF0b3IgZGlyZWN0aW9uPVwidmVydGljYWxcIiAvPiA6IG51bGx9XG4gICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgIDxSaWdodENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwicm93XCJcbiAgICAgICAgICAgICAgICAgIGFsaWduSXRlbXM9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheX1cbiAgICAgICAgICAgICAgICA8L1JpZ2h0Q29tcG9uZW50PlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvU3R5bGVkUmlnaHRFbGVtZW50PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICA8RXhwYW5kYWJsZSBvcGVuZWQ9eyEhZXJyb3J9PlxuICAgICAgICAgIDxTdHlsZWRFcnJvcj57ZXJyb3J9PC9TdHlsZWRFcnJvcj5cbiAgICAgICAgPC9FeHBhbmRhYmxlPlxuICAgICAgICB7bm90aWNlID8gPFN0eWxlZE5vdGljZT57bm90aWNlfTwvU3R5bGVkTm90aWNlPiA6IG51bGx9XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH0sXG4pXG4iXX0= */",
87
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
88
+ };
89
+ const StyledLabel = /* @__PURE__ */ _styled__default.default("label", process.env.NODE_ENV === "production" ? {
90
+ shouldForwardProp: (prop) => !["edit", "error", "resizable", "fillAvailable"].includes(prop),
91
+ target: "el3h3g96"
92
+ } : {
93
+ shouldForwardProp: (prop) => !["edit", "error", "resizable", "fillAvailable"].includes(prop),
94
+ target: "el3h3g96",
95
+ label: "StyledLabel"
96
+ })("display:block;position:absolute;left:0;top:0;padding-left:8px;padding-right:8px;pointer-events:none;color:", ({
97
+ theme: {
98
+ colors
99
+ }
100
+ }) => colors.neutral.textWeak, ";white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;height:48px;font-size:", ({
101
+ theme
102
+ }) => theme.typography.bodySmall, ";transition:transform 150ms;transform:translate(0, 12px) scale(1);", ({
103
+ edit
104
+ }) => edit && _ref, " ", ({
105
+ disabled,
106
+ theme: {
107
+ colors
108
+ }
109
+ }) => disabled && /* @__PURE__ */ react.css("color:", colors.neutral.textDisabled, ";" + (process.env.NODE_ENV === "production" ? "" : ";label:StyledLabel;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBOElPIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHJhbmRvbU5hbWUgZnJvbSAnQHNjYWxld2F5L3JhbmRvbS1uYW1lJ1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB0eXBlIHtcbiAgQ2hhbmdlRXZlbnQsXG4gIEZvY3VzRXZlbnRIYW5kbGVyLFxuICBJbnB1dEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTGFiZWxIVE1MQXR0cmlidXRlcyxcbiAgVGV4dGFyZWFIVE1MQXR0cmlidXRlcyxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBmb3J3YXJkUmVmLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJbXBlcmF0aXZlSGFuZGxlLFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJy4uL0J1dHRvbidcbmltcG9ydCB7IEV4cGFuZGFibGUgfSBmcm9tICcuLi9FeHBhbmRhYmxlJ1xuaW1wb3J0IHsgTm90aWNlIH0gZnJvbSAnLi4vTm90aWNlJ1xuaW1wb3J0IHsgU2VwYXJhdG9yIH0gZnJvbSAnLi4vU2VwYXJhdG9yJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9UZXh0J1xuXG5jb25zdCBpbnB1dFNpemVzID0ge1xuICBtZWRpdW06IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICBgLFxuICAgIGZ1bGw6IGBcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICBgLFxuICB9LFxuICBzbWFsbDoge1xuICAgIGRlZmF1bHQ6IGBcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgIGAsXG4gIH0sXG59XG5cbnR5cGUgVGV4dElucHV0U2l6ZXMgPSBrZXlvZiB0eXBlb2YgaW5wdXRTaXplc1xuXG5leHBvcnQgY29uc3QgdGV4dElucHV0U2l6ZXMgPSBPYmplY3Qua2V5cyhpbnB1dFNpemVzKSBhcyBUZXh0SW5wdXRTaXplc1tdXG5cbmNvbnN0IFN0eWxlZFNlcGFyYXRvciA9IHN0eWxlZChTZXBhcmF0b3IpYFxuICBtYXJnaW46IDFweCAwcHg7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMnB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmRTdHJvbmd9O1xuYFxudHlwZSBTdHlsZWRSaWdodEVsZW1lbnRQcm9wcyA9IHtcbiAgZWRpdD86IGJvb2xlYW5cbiAgdG91Y2hhYmxlPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZWRSaWdodEVsZW1lbnQgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnZWRpdCcsICd0b3VjaGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZFJpZ2h0RWxlbWVudFByb3BzPmBcbiAgJHsoeyB0aGVtZTogeyBjb2xvcnMsIHNwYWNlIH0gfSkgPT4gY3NzYFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDAgJHtzcGFjZVsnMSddfTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogJHtzcGFjZVsnMSddfTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRyYW5zaXRpb246XG4gICAgICB0cmFuc2Zvcm0gMTUwbXMsXG4gICAgICBjb2xvciAxNTBtcztcbiAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHRXZWFrSG92ZXJ9O1xuICAgIH1cbiAgYH1cblxuICAkeyh7IHRvdWNoYWJsZSB9KSA9PlxuICAgIHRvdWNoYWJsZSAmJlxuICAgIGNzc2BcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgPiBidXR0b24ge1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgYH1cbmBcbnR5cGUgU3R5bGVkTGFiZWxQcm9wcyA9IHtcbiAgJ2FyaWEtbGFiZWwnPzogc3RyaW5nXG4gICdhcmlhLWxpdmUnOiBzdHJpbmdcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIGVkaXQ/OiBib29sZWFuXG4gIGVycm9yPzogYm9vbGVhblxuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxufSAmIExhYmVsSFRNTEF0dHJpYnV0ZXM8SFRNTExhYmVsRWxlbWVudD5cblxuY29uc3QgU3R5bGVkTGFiZWwgPSBzdHlsZWQoJ2xhYmVsJywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbJ2VkaXQnLCAnZXJyb3InLCAncmVzaXphYmxlJywgJ2ZpbGxBdmFpbGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZExhYmVsUHJvcHM+YFxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0OHB4O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUudHlwb2dyYXBoeS5ib2R5U21hbGx9O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEycHgpIHNjYWxlKDEpO1xuXG4gICR7KHsgZWRpdCB9KSA9PlxuICAgIGVkaXQgJiZcbiAgICBjc3NgXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOS42JSwgLTNweCkgc2NhbGUoMC44KTtcbiAgICBgfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyByZWFkT25seSwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICByZWFkT25seSAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07XG4gICAgYH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLmRhbmdlci50ZXh0fTtcbiAgICBgfVxuYFxuXG5jb25zdCBTdHlsZWRSZWxhdGl2ZURpdiA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmBcblxuY29uc3QgU3R5bGVkRXJyb3IgPSBzdHlsZWQuZGl2YFxuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIudGV4dH07XG4gIHBhZGRpbmctdG9wOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycwLjI1J119O1xuYFxuXG5jb25zdCBTdHlsZWROb3RpY2UgPSBzdHlsZWQoTm90aWNlKWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC41J119O1xuYFxuXG50eXBlIFN0eWxlZElucHV0UHJvcHMgPSB7XG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgaGFzTGFiZWw/OiBib29sZWFuXG4gIHBhZGRpbmdSaWdodEZhY3RvcjogbnVtYmVyXG4gIGlzUGxhY2Vob2xkZXJWaXNpYmxlPzogYm9vbGVhblxuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgaW5wdXRTaXplOiBUZXh0SW5wdXRTaXplc1xuICB1bml0Pzogc3RyaW5nXG4gIHJpZ2h0Q29tcG9uZW50TGVuZ3RoOiBudW1iZXJcbn0gJiAoXG4gIHwgSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlxuICB8IFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD5cbilcblxudHlwZSBJbnB1dFByb3BzID0gT21pdDxcbiAgRXhjbHVkZTxTdHlsZWRJbnB1dFByb3BzLCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+PixcbiAgJ2lucHV0U2l6ZSdcbj5cblxuY29uc3QgU3R5bGVkSW5wdXQgPSBzdHlsZWQoJ2lucHV0Jywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbXG4gICAgICAnYXMnLFxuICAgICAgJ2Vycm9yJyxcbiAgICAgICdmaWxsQXZhaWxhYmxlJyxcbiAgICAgICdoYXNMYWJlbCcsXG4gICAgICAnaXNQbGFjZWhvbGRlclZpc2libGUnLFxuICAgICAgJ211bHRpbGluZScsXG4gICAgICAncmVzaXphYmxlJyxcbiAgICAgICdpbnB1dFNpemUnLFxuICAgICAgJ3BhZGRpbmdSaWdodEZhY3RvcicsXG4gICAgICAncmlnaHRDb21wb25lbnRMZW5ndGgnLFxuICAgICAgJ3VuaXQnLFxuICAgIF0uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRJbnB1dFByb3BzPmBcbiAgdHJhbnNpdGlvbjpcbiAgICBib3JkZXItY29sb3IgMC4ycyBlYXNlLFxuICAgIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmR9O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJvcmRlcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHsgdGhlbWU6IHsgcmFkaWkgfSB9KSA9PiByYWRpaS5kZWZhdWx0fTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dH07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy1yaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHRXZWFrfTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR7KHsgdGhlbWU6IHsgc2hhZG93cyB9IH0pID0+IHNoYWRvd3MuZm9jdXNQcmltYXJ5fTtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLnByaW1hcnkuYm9yZGVySG92ZXJ9O1xuICB9XG5cbiAgJHsoeyBpc1BsYWNlaG9sZGVyVmlzaWJsZSB9KSA9PlxuICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlICYmXG4gICAgYCY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfWB9XG5cbiAgJHsoeyBkaXNhYmxlZCwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBkaXNhYmxlZCAmJlxuICAgIGBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dH07YH1cblxuICAkeyh7IGlucHV0U2l6ZSB9KSA9PiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmRlZmF1bHR9XG5cbiAgJHsoeyBpbnB1dFNpemUsIGhhc0xhYmVsIH0pID0+XG4gICAgISFpbnB1dFNpemUgJiYgIWhhc0xhYmVsICYmIGlucHV0U2l6ZXNbaW5wdXRTaXplXT8uZnVsbH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMsIHNoYWRvd3MgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgYGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlcn07XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAke2NvbG9ycy5kYW5nZXIuYm9yZGVySG92ZXJ9O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogJHtzaGFkb3dzLmZvY3VzRGFuZ2VyfTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9YH1cblxuICAgICR7KHsgbXVsdGlsaW5lLCByZXNpemFibGUsIGZpbGxBdmFpbGFibGUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgaGVpZ2h0OiAke2ZpbGxBdmFpbGFibGUgPyAnMTAwJScgOiAnaW5pdGlhbCd9O1xuICAgIHJlc2l6ZTogJHtyZXNpemFibGUgPT09IGZhbHNlID8gJ25vbmUnIDogJ3ZlcnRpY2FsJ307XG4gIGB9XG5cbiAgJHsoeyBtdWx0aWxpbmUsIGhhc0xhYmVsLCB0aGVtZSB9KSA9PlxuICAgIG11bHRpbGluZSAmJlxuICAgICFoYXNMYWJlbCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXRvcDogJHt0aGVtZS5zcGFjZVsnMSddfTtcbiAgYH1cblxuICAkeyh7IHBhZGRpbmdSaWdodEZhY3RvciwgcmlnaHRDb21wb25lbnRMZW5ndGgsIHVuaXQsIHRoZW1lIH0pID0+XG4gICAgcGFkZGluZ1JpZ2h0RmFjdG9yID4gMCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCR7XG4gICAgICB1bml0ID8gYCR7dW5pdC5sZW5ndGh9ICogJHt0aGVtZS5zcGFjZVsnMSddfSArIGAgOiAnJ1xuICAgIH0ke1xuICAgICAgcGFkZGluZ1JpZ2h0RmFjdG9yICtcbiAgICAgICh1bml0ID8gcmlnaHRDb21wb25lbnRMZW5ndGggLSAxIDogcmlnaHRDb21wb25lbnRMZW5ndGgpXG4gICAgfSAqICR7dGhlbWUuc3BhY2VbJzQnXX0pO1xuICBgfVxuYFxuXG5jb25zdCBSaWdodENvbXBvbmVudCA9IHN0eWxlZChTdGFjaylgXG4gIG1pbi13aWR0aDogMjRweDtcbmBcblxudHlwZSBUZXh0SW5wdXRQcm9wcyA9IHtcbiAgJ2RhdGEtdGVzdGlkJz86IHN0cmluZ1xuICBhcmlhQ29udHJvbHM/OiBzdHJpbmdcbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nXG4gIGF1dG9Gb2N1cz86IGJvb2xlYW5cbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gIGNvbHM/OiBudW1iZXJcbiAgZGVmYXVsdFZhbHVlPzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IHN0cmluZ1xuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxuICBnZW5lcmF0ZWQ/OiBib29sZWFuXG4gIGhlaWdodD86IHN0cmluZyB8IG51bWJlclxuICBpZD86IHN0cmluZ1xuICBsYWJlbD86IHN0cmluZ1xuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIG5hbWU/OiBzdHJpbmdcbiAgbm90aWNlPzogc3RyaW5nXG4gIG5vVG9wTGFiZWw/OiBib29sZWFuXG4gIG9uQmx1cj86IEZvY3VzRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbkNoYW5nZT86ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkXG4gIG9uRm9jdXM/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlVcD86IEtleWJvYXJkRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgcmFuZG9tPzogc3RyaW5nXG4gIHJlYWRPbmx5PzogYm9vbGVhblxuICByZXF1aXJlZD86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICByb3dzPzogbnVtYmVyXG4gIHNpemU/OiBUZXh0SW5wdXRTaXplc1xuICB0YWJJbmRleD86IG51bWJlclxuICB0eXBlPzogc3RyaW5nXG4gIHVuaXQ/OiBzdHJpbmdcbiAgdmFsaWQ/OiBib29sZWFuXG4gIHZhbHVlPzogc3RyaW5nIHwgbnVtYmVyXG4gIHdyYXA/OiBzdHJpbmdcbiAgaW5wdXRQcm9wcz86IElucHV0UHJvcHNcbiAgbWF4PzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWF4J11cbiAgbWluPzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWluJ11cbn0gJiAoXG4gIHwgT21pdDxJbnB1dEhUTUxBdHRyaWJ1dGVzPEhUTUxJbnB1dEVsZW1lbnQ+LCAnb25DaGFuZ2UnPlxuICB8IE9taXQ8VGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbilcblxuY29uc3QgVW5pdExhYmVsID0gc3R5bGVkKFRleHQpYFxuICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuYFxuXG4vKipcbiAqIFRleHRJbnB1dCBjb21wb25lbnQgYWxsb3dzIHVzZXJzIHRvIGlucHV0IHRleHQsIHdpdGggb3B0aW9ucyBmb3IgY3VzdG9taXphdGlvbiBhbmQgdmFsaWRhdGlvbi5cbiAqIEl0IHN1cHBvcnRzIHZhcmlvdXMgaW5wdXQgdHlwZXMgYW5kIHNob3VsZCBiZSBhcHByb3ByaWF0ZWx5IHNpemVkIHdpdGggY2xlYXIgbGFiZWxpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBUZXh0SW5wdXQgPSBmb3J3YXJkUmVmPFxuICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCB8IG51bGwsXG4gIFRleHRJbnB1dFByb3BzXG4+KFxuICAoXG4gICAge1xuICAgICAgJ2RhdGEtdGVzdGlkJzogZGF0YVRlc3RJZCxcbiAgICAgIGFyaWFDb250cm9scyxcbiAgICAgIGF1dG9Db21wbGV0ZSA9ICdvbicsXG4gICAgICBhdXRvRm9jdXMsXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBjb2xzLFxuICAgICAgZGVmYXVsdFZhbHVlLFxuICAgICAgZGlzYWJsZWQsXG4gICAgICBlZGl0OiBmb3JjZUVkaXQsXG4gICAgICBlcnJvcixcbiAgICAgIGZpbGxBdmFpbGFibGUsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoZWlnaHQsXG4gICAgICBpZCxcbiAgICAgIGxhYmVsLFxuICAgICAgbXVsdGlsaW5lLFxuICAgICAgbmFtZSxcbiAgICAgIG5vdGljZSxcbiAgICAgIG5vVG9wTGFiZWwgPSBmYWxzZSxcbiAgICAgIG9uQmx1cixcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgb25Gb2N1cyxcbiAgICAgIG9uS2V5VXAsXG4gICAgICBvbktleURvd24sXG4gICAgICBwbGFjZWhvbGRlcixcbiAgICAgIHJhbmRvbSxcbiAgICAgIHJlYWRPbmx5LFxuICAgICAgcmVxdWlyZWQsXG4gICAgICByZXNpemFibGUsXG4gICAgICByb3dzLFxuICAgICAgc2l6ZSA9ICdtZWRpdW0nLFxuICAgICAgdGFiSW5kZXgsXG4gICAgICB0eXBlID0gJ3RleHQnLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgdmFsdWUsXG4gICAgICB3cmFwLFxuICAgICAgaW5wdXRQcm9wcyxcbiAgICAgIG1pbixcbiAgICAgIG1heCxcbiAgICB9LFxuICAgIHJlZixcbiAgKSA9PiB7XG4gICAgY29uc3QgY29udHJvbFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKVxuXG4gICAgY29uc3QgW3Zpc2l0ZWQsIHNldFZpc2l0ZWRdID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bhc3N3b3JkVmlzaWJsZSwgc2V0UGFzc3dvcmRWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gc2V0UGFzc3dvcmRWaXNpYmxlKHggPT4gIXgpLFxuICAgICAgW10sXG4gICAgKVxuXG4gICAgLy8gRm9yd2FyZCByZWYgdG8gcGFyZW50IHJlZlxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGU8dW5rbm93biwgdW5rbm93bj4ocmVmLCAoKSA9PiBjb250cm9sUmVmLCBbXSlcblxuICAgIC8vIEZvY3VzIHdoZW4gcGFzc3dvcmQgaXMgdmlzaWJsZVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAocGFzc3dvcmRWaXNpYmxlKSB7XG4gICAgICAgIGNvbnRyb2xSZWY/LmN1cnJlbnQ/LmZvY3VzKClcbiAgICAgIH1cbiAgICB9LCBbcGFzc3dvcmRWaXNpYmxlXSlcblxuICAgIGNvbnN0IGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2sgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSgpLFxuICAgICAgW3RvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eV0sXG4gICAgKVxuXG4gICAgY29uc3QgcmFuZG9taXplID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiBvbkNoYW5nZT8uKHJhbmRvbU5hbWUocmFuZG9tKSksXG4gICAgICBbb25DaGFuZ2UsIHJhbmRvbV0sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2xpY2tSYW5kb21pemUgPSB1c2VDYWxsYmFjaygoKSA9PiByYW5kb21pemUoKSwgW3JhbmRvbWl6ZV0pXG5cbiAgICBjb25zdCBoYW5kbGVGb2N1czogRm9jdXNFdmVudEhhbmRsZXI8XG4gICAgICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudFxuICAgID4gPSB1c2VDYWxsYmFjayhcbiAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKCF2aXNpdGVkICYmICFyZWFkT25seSkge1xuICAgICAgICAgIHNldFZpc2l0ZWQodHJ1ZSlcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICAgICAgb25Gb2N1cyhldmVudClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFt2aXNpdGVkLCByZWFkT25seSwgb25Gb2N1c10sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gdXNlQ2FsbGJhY2soXG4gICAgICAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PikgPT5cbiAgICAgICAgb25DaGFuZ2U/LihldmVudC50YXJnZXQudmFsdWUpLFxuICAgICAgW29uQ2hhbmdlXSxcbiAgICApXG5cbiAgICBjb25zdCBpc1Bhc3NUb2dnbGVhYmxlID0gdHlwZSA9PT0gJ3RvZ2dsZWFibGUtcGFzc3dvcmQnXG4gICAgY29uc3QgaGFzTGFiZWwgPSAhIWxhYmVsICYmICFub1RvcExhYmVsICYmIHNpemUgPT09ICdtZWRpdW0nXG4gICAgY29uc3QgZWRpdCA9XG4gICAgICBoYXNMYWJlbCAmJiAoZm9yY2VFZGl0IHx8IHZpc2l0ZWQgfHwgdmFsdWUgfHwgZXJyb3IgfHwgZ2VuZXJhdGVkKVxuXG4gICAgY29uc3QgaXNQbGFjZWhvbGRlclZpc2libGUgPSAhaGFzTGFiZWwgfHwgISFlZGl0XG4gICAgY29uc3QgaGFzUmlnaHRFbGVtZW50ID0gISEoXG4gICAgICB2YWxpZCAhPT0gdW5kZWZpbmVkIHx8XG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlIHx8XG4gICAgICByYW5kb20gfHxcbiAgICAgIHVuaXRcbiAgICApXG5cbiAgICBjb25zdCBnZXRUeXBlID0gKCkgPT4ge1xuICAgICAgaWYgKGlzUGFzc1RvZ2dsZWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHBhc3N3b3JkVmlzaWJsZSB8fCBnZW5lcmF0ZWQgPyAndGV4dCcgOiAncGFzc3dvcmQnXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBtdWx0aWxpbmUgPyB1bmRlZmluZWQgOiB0eXBlXG4gICAgfVxuXG4gICAgY29uc3QgaW5wdXRTaXplID0gc2l6ZVxuXG4gICAgY29uc3QgcmlnaHRDb21wb25lbnRzQXJyYXkgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50cyA9IFtdXG5cbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlICYmICFnZW5lcmF0ZWQpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e1xuICAgICAgICAgICAgICBkYXRhVGVzdElkID8gYCR7ZGF0YVRlc3RJZH0tdmlzaWJpbGl0eS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPXtwYXNzd29yZFZpc2libGUgPyAnaGlkZScgOiAnc2hvdyd9XG4gICAgICAgICAgICBrZXk9XCJwYXNzd29yZC12aXNpYmxlXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2t9XG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBpY29uPXtwYXNzd29yZFZpc2libGUgPyAnZXllLW9mZicgOiAnZXllJ31cbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmIChyYW5kb20pIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAga2V5PVwicmFuZG9tXCJcbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXJhbmRvbWl6ZS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwicmFuZG9taXplXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsaWNrUmFuZG9taXplfVxuICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgaWNvbj1cImF1dG8tZml4XCJcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgICBzZW50aW1lbnQ9XCJuZXV0cmFsXCJcbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh2YWxpZCA9PT0gZmFsc2UgfHwgdmFsaWQgPT09IHRydWUpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEljb25cbiAgICAgICAgICAgIGtleT1cInZhbGlkXCJcbiAgICAgICAgICAgIG5hbWU9eyF2YWxpZCA/ICdjbG9zZScgOiAnY2hlY2snfVxuICAgICAgICAgICAgY29sb3I9eyF2YWxpZCA/ICdkYW5nZXInIDogJ3N1Y2Nlc3MnfVxuICAgICAgICAgICAgc2l6ZT17MjB9XG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh1bml0KSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxVbml0TGFiZWwga2V5PVwidW5pdFwiIHZhcmlhbnQ9XCJib2R5U21hbGxcIiBhcz1cInBcIiBwcm9taW5lbmNlPVwid2Vha1wiPlxuICAgICAgICAgICAge3VuaXR9XG4gICAgICAgICAgPC9Vbml0TGFiZWw+LFxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIHJldHVybiByaWdodENvbXBvbmVudHNcbiAgICB9LCBbXG4gICAgICBkaXNhYmxlZCxcbiAgICAgIGdlbmVyYXRlZCxcbiAgICAgIGhhbmRsZUNsaWNrUmFuZG9taXplLFxuICAgICAgaGFuZGxlUGFzc1Zpc2liaWxpdHlDbGljayxcbiAgICAgIGlzUGFzc1RvZ2dsZWFibGUsXG4gICAgICBwYXNzd29yZFZpc2libGUsXG4gICAgICByYW5kb20sXG4gICAgICB1bml0LFxuICAgICAgdmFsaWQsXG4gICAgICBkYXRhVGVzdElkLFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG93U2VwYXJhdG9yID0gKHJlcXVpcmVkICYmIGhhc1JpZ2h0RWxlbWVudCkgfHwgdW5pdFxuICAgIGNvbnN0IHBhZGRpbmdSaWdodEZhY3RvciA9IChyZXF1aXJlZCA/IDEgOiAwKSArIChzaG93U2VwYXJhdG9yID8gMC41IDogMClcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lfT5cbiAgICAgICAgPFN0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICAgIDxTdHlsZWRJbnB1dFxuICAgICAgICAgICAgYXJpYS1jb250cm9scz17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17bGFiZWwgfHwgdW5kZWZpbmVkfVxuICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtoYXNMYWJlbCA/IGFyaWFDb250cm9scyA6IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFzPXttdWx0aWxpbmUgPyAndGV4dGFyZWEnIDogJ2lucHV0J31cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17YXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXthdXRvRm9jdXN9XG4gICAgICAgICAgICBjb2xzPXtjb2xzfVxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e2RhdGFUZXN0SWR9XG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgZmlsbEF2YWlsYWJsZT17ZmlsbEF2YWlsYWJsZX1cbiAgICAgICAgICAgIGhhc0xhYmVsPXtoYXNMYWJlbH1cbiAgICAgICAgICAgIHBhZGRpbmdSaWdodEZhY3Rvcj17cGFkZGluZ1JpZ2h0RmFjdG9yfVxuICAgICAgICAgICAgcmlnaHRDb21wb25lbnRMZW5ndGg9e3JpZ2h0Q29tcG9uZW50c0FycmF5Lmxlbmd0aH1cbiAgICAgICAgICAgIHVuaXQ9e3VuaXR9XG4gICAgICAgICAgICBpZD17aWR9XG4gICAgICAgICAgICBpbnB1dFNpemU9e2lucHV0U2l6ZX1cbiAgICAgICAgICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlPXtpc1BsYWNlaG9sZGVyVmlzaWJsZX1cbiAgICAgICAgICAgIG11bHRpbGluZT17bXVsdGlsaW5lfVxuICAgICAgICAgICAgbmFtZT17bmFtZX1cbiAgICAgICAgICAgIG9uQmx1cj17b25CbHVyfVxuICAgICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgIG9uRm9jdXM9e2hhbmRsZUZvY3VzfVxuICAgICAgICAgICAgb25LZXlVcD17b25LZXlVcH1cbiAgICAgICAgICAgIG9uS2V5RG93bj17b25LZXlEb3dufVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgcmVmPXtjb250cm9sUmVmfVxuICAgICAgICAgICAgcmVzaXphYmxlPXtyZXNpemFibGV9XG4gICAgICAgICAgICByb3dzPXtyb3dzfVxuICAgICAgICAgICAgc3R5bGU9e3sgaGVpZ2h0IH19XG4gICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgICB0eXBlPXtnZXRUeXBlKCl9XG4gICAgICAgICAgICB2YWx1ZT17dmFsdWUgPT09IG51bGwgPyAnJyA6IHZhbHVlfVxuICAgICAgICAgICAgd3JhcD17d3JhcH1cbiAgICAgICAgICAgIG1pbj17bWlufVxuICAgICAgICAgICAgbWF4PXttYXh9XG4gICAgICAgICAgICByZXF1aXJlZD17cmVxdWlyZWR9XG4gICAgICAgICAgICB7Li4uaW5wdXRQcm9wc31cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtoYXNMYWJlbCAmJiAoXG4gICAgICAgICAgICA8U3R5bGVkTGFiZWxcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgZXJyb3I9eyEhZXJyb3J9XG4gICAgICAgICAgICAgIGlkPXthcmlhQ29udHJvbHN9XG4gICAgICAgICAgICAgIGh0bWxGb3I9e2lkfVxuICAgICAgICAgICAgICBhcmlhLWxpdmU9XCJhc3NlcnRpdmVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICA8L1N0eWxlZExhYmVsPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7aGFzUmlnaHRFbGVtZW50IHx8IHJlcXVpcmVkID8gKFxuICAgICAgICAgICAgPFN0eWxlZFJpZ2h0RWxlbWVudFxuICAgICAgICAgICAgICBlZGl0PXshIWVkaXR9XG4gICAgICAgICAgICAgIHRvdWNoYWJsZT17aXNQYXNzVG9nZ2xlYWJsZSB8fCAhIXJhbmRvbX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3JlcXVpcmVkID8gKFxuICAgICAgICAgICAgICAgIDxJY29uIG5hbWU9XCJhc3Rlcmlza1wiIGNvbG9yPVwiZGFuZ2VyXCIgc2l6ZT17MTB9IC8+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICB7c2hvd1NlcGFyYXRvciA/IDxTdHlsZWRTZXBhcmF0b3IgZGlyZWN0aW9uPVwidmVydGljYWxcIiAvPiA6IG51bGx9XG4gICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgIDxSaWdodENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwicm93XCJcbiAgICAgICAgICAgICAgICAgIGFsaWduSXRlbXM9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheX1cbiAgICAgICAgICAgICAgICA8L1JpZ2h0Q29tcG9uZW50PlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvU3R5bGVkUmlnaHRFbGVtZW50PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICA8RXhwYW5kYWJsZSBvcGVuZWQ9eyEhZXJyb3J9PlxuICAgICAgICAgIDxTdHlsZWRFcnJvcj57ZXJyb3J9PC9TdHlsZWRFcnJvcj5cbiAgICAgICAgPC9FeHBhbmRhYmxlPlxuICAgICAgICB7bm90aWNlID8gPFN0eWxlZE5vdGljZT57bm90aWNlfTwvU3R5bGVkTm90aWNlPiA6IG51bGx9XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH0sXG4pXG4iXX0= */"), " ", ({
110
+ readOnly,
111
+ theme: {
112
+ colors
113
+ }
114
+ }) => readOnly && /* @__PURE__ */ react.css("color:", colors.neutral.textDisabled, ";" + (process.env.NODE_ENV === "production" ? "" : ";label:StyledLabel;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0pPIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHJhbmRvbU5hbWUgZnJvbSAnQHNjYWxld2F5L3JhbmRvbS1uYW1lJ1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB0eXBlIHtcbiAgQ2hhbmdlRXZlbnQsXG4gIEZvY3VzRXZlbnRIYW5kbGVyLFxuICBJbnB1dEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTGFiZWxIVE1MQXR0cmlidXRlcyxcbiAgVGV4dGFyZWFIVE1MQXR0cmlidXRlcyxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBmb3J3YXJkUmVmLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJbXBlcmF0aXZlSGFuZGxlLFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJy4uL0J1dHRvbidcbmltcG9ydCB7IEV4cGFuZGFibGUgfSBmcm9tICcuLi9FeHBhbmRhYmxlJ1xuaW1wb3J0IHsgTm90aWNlIH0gZnJvbSAnLi4vTm90aWNlJ1xuaW1wb3J0IHsgU2VwYXJhdG9yIH0gZnJvbSAnLi4vU2VwYXJhdG9yJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9UZXh0J1xuXG5jb25zdCBpbnB1dFNpemVzID0ge1xuICBtZWRpdW06IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICBgLFxuICAgIGZ1bGw6IGBcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICBgLFxuICB9LFxuICBzbWFsbDoge1xuICAgIGRlZmF1bHQ6IGBcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgIGAsXG4gIH0sXG59XG5cbnR5cGUgVGV4dElucHV0U2l6ZXMgPSBrZXlvZiB0eXBlb2YgaW5wdXRTaXplc1xuXG5leHBvcnQgY29uc3QgdGV4dElucHV0U2l6ZXMgPSBPYmplY3Qua2V5cyhpbnB1dFNpemVzKSBhcyBUZXh0SW5wdXRTaXplc1tdXG5cbmNvbnN0IFN0eWxlZFNlcGFyYXRvciA9IHN0eWxlZChTZXBhcmF0b3IpYFxuICBtYXJnaW46IDFweCAwcHg7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMnB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmRTdHJvbmd9O1xuYFxudHlwZSBTdHlsZWRSaWdodEVsZW1lbnRQcm9wcyA9IHtcbiAgZWRpdD86IGJvb2xlYW5cbiAgdG91Y2hhYmxlPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZWRSaWdodEVsZW1lbnQgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnZWRpdCcsICd0b3VjaGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZFJpZ2h0RWxlbWVudFByb3BzPmBcbiAgJHsoeyB0aGVtZTogeyBjb2xvcnMsIHNwYWNlIH0gfSkgPT4gY3NzYFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDAgJHtzcGFjZVsnMSddfTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogJHtzcGFjZVsnMSddfTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRyYW5zaXRpb246XG4gICAgICB0cmFuc2Zvcm0gMTUwbXMsXG4gICAgICBjb2xvciAxNTBtcztcbiAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHRXZWFrSG92ZXJ9O1xuICAgIH1cbiAgYH1cblxuICAkeyh7IHRvdWNoYWJsZSB9KSA9PlxuICAgIHRvdWNoYWJsZSAmJlxuICAgIGNzc2BcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgPiBidXR0b24ge1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgYH1cbmBcbnR5cGUgU3R5bGVkTGFiZWxQcm9wcyA9IHtcbiAgJ2FyaWEtbGFiZWwnPzogc3RyaW5nXG4gICdhcmlhLWxpdmUnOiBzdHJpbmdcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIGVkaXQ/OiBib29sZWFuXG4gIGVycm9yPzogYm9vbGVhblxuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxufSAmIExhYmVsSFRNTEF0dHJpYnV0ZXM8SFRNTExhYmVsRWxlbWVudD5cblxuY29uc3QgU3R5bGVkTGFiZWwgPSBzdHlsZWQoJ2xhYmVsJywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbJ2VkaXQnLCAnZXJyb3InLCAncmVzaXphYmxlJywgJ2ZpbGxBdmFpbGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZExhYmVsUHJvcHM+YFxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0OHB4O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUudHlwb2dyYXBoeS5ib2R5U21hbGx9O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEycHgpIHNjYWxlKDEpO1xuXG4gICR7KHsgZWRpdCB9KSA9PlxuICAgIGVkaXQgJiZcbiAgICBjc3NgXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOS42JSwgLTNweCkgc2NhbGUoMC44KTtcbiAgICBgfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyByZWFkT25seSwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICByZWFkT25seSAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07XG4gICAgYH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLmRhbmdlci50ZXh0fTtcbiAgICBgfVxuYFxuXG5jb25zdCBTdHlsZWRSZWxhdGl2ZURpdiA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmBcblxuY29uc3QgU3R5bGVkRXJyb3IgPSBzdHlsZWQuZGl2YFxuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIudGV4dH07XG4gIHBhZGRpbmctdG9wOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycwLjI1J119O1xuYFxuXG5jb25zdCBTdHlsZWROb3RpY2UgPSBzdHlsZWQoTm90aWNlKWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC41J119O1xuYFxuXG50eXBlIFN0eWxlZElucHV0UHJvcHMgPSB7XG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgaGFzTGFiZWw/OiBib29sZWFuXG4gIHBhZGRpbmdSaWdodEZhY3RvcjogbnVtYmVyXG4gIGlzUGxhY2Vob2xkZXJWaXNpYmxlPzogYm9vbGVhblxuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgaW5wdXRTaXplOiBUZXh0SW5wdXRTaXplc1xuICB1bml0Pzogc3RyaW5nXG4gIHJpZ2h0Q29tcG9uZW50TGVuZ3RoOiBudW1iZXJcbn0gJiAoXG4gIHwgSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlxuICB8IFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD5cbilcblxudHlwZSBJbnB1dFByb3BzID0gT21pdDxcbiAgRXhjbHVkZTxTdHlsZWRJbnB1dFByb3BzLCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+PixcbiAgJ2lucHV0U2l6ZSdcbj5cblxuY29uc3QgU3R5bGVkSW5wdXQgPSBzdHlsZWQoJ2lucHV0Jywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbXG4gICAgICAnYXMnLFxuICAgICAgJ2Vycm9yJyxcbiAgICAgICdmaWxsQXZhaWxhYmxlJyxcbiAgICAgICdoYXNMYWJlbCcsXG4gICAgICAnaXNQbGFjZWhvbGRlclZpc2libGUnLFxuICAgICAgJ211bHRpbGluZScsXG4gICAgICAncmVzaXphYmxlJyxcbiAgICAgICdpbnB1dFNpemUnLFxuICAgICAgJ3BhZGRpbmdSaWdodEZhY3RvcicsXG4gICAgICAncmlnaHRDb21wb25lbnRMZW5ndGgnLFxuICAgICAgJ3VuaXQnLFxuICAgIF0uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRJbnB1dFByb3BzPmBcbiAgdHJhbnNpdGlvbjpcbiAgICBib3JkZXItY29sb3IgMC4ycyBlYXNlLFxuICAgIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmR9O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJvcmRlcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHsgdGhlbWU6IHsgcmFkaWkgfSB9KSA9PiByYWRpaS5kZWZhdWx0fTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dH07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy1yaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHRXZWFrfTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR7KHsgdGhlbWU6IHsgc2hhZG93cyB9IH0pID0+IHNoYWRvd3MuZm9jdXNQcmltYXJ5fTtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLnByaW1hcnkuYm9yZGVySG92ZXJ9O1xuICB9XG5cbiAgJHsoeyBpc1BsYWNlaG9sZGVyVmlzaWJsZSB9KSA9PlxuICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlICYmXG4gICAgYCY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfWB9XG5cbiAgJHsoeyBkaXNhYmxlZCwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBkaXNhYmxlZCAmJlxuICAgIGBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dH07YH1cblxuICAkeyh7IGlucHV0U2l6ZSB9KSA9PiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmRlZmF1bHR9XG5cbiAgJHsoeyBpbnB1dFNpemUsIGhhc0xhYmVsIH0pID0+XG4gICAgISFpbnB1dFNpemUgJiYgIWhhc0xhYmVsICYmIGlucHV0U2l6ZXNbaW5wdXRTaXplXT8uZnVsbH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMsIHNoYWRvd3MgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgYGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlcn07XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAke2NvbG9ycy5kYW5nZXIuYm9yZGVySG92ZXJ9O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogJHtzaGFkb3dzLmZvY3VzRGFuZ2VyfTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9YH1cblxuICAgICR7KHsgbXVsdGlsaW5lLCByZXNpemFibGUsIGZpbGxBdmFpbGFibGUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgaGVpZ2h0OiAke2ZpbGxBdmFpbGFibGUgPyAnMTAwJScgOiAnaW5pdGlhbCd9O1xuICAgIHJlc2l6ZTogJHtyZXNpemFibGUgPT09IGZhbHNlID8gJ25vbmUnIDogJ3ZlcnRpY2FsJ307XG4gIGB9XG5cbiAgJHsoeyBtdWx0aWxpbmUsIGhhc0xhYmVsLCB0aGVtZSB9KSA9PlxuICAgIG11bHRpbGluZSAmJlxuICAgICFoYXNMYWJlbCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXRvcDogJHt0aGVtZS5zcGFjZVsnMSddfTtcbiAgYH1cblxuICAkeyh7IHBhZGRpbmdSaWdodEZhY3RvciwgcmlnaHRDb21wb25lbnRMZW5ndGgsIHVuaXQsIHRoZW1lIH0pID0+XG4gICAgcGFkZGluZ1JpZ2h0RmFjdG9yID4gMCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCR7XG4gICAgICB1bml0ID8gYCR7dW5pdC5sZW5ndGh9ICogJHt0aGVtZS5zcGFjZVsnMSddfSArIGAgOiAnJ1xuICAgIH0ke1xuICAgICAgcGFkZGluZ1JpZ2h0RmFjdG9yICtcbiAgICAgICh1bml0ID8gcmlnaHRDb21wb25lbnRMZW5ndGggLSAxIDogcmlnaHRDb21wb25lbnRMZW5ndGgpXG4gICAgfSAqICR7dGhlbWUuc3BhY2VbJzQnXX0pO1xuICBgfVxuYFxuXG5jb25zdCBSaWdodENvbXBvbmVudCA9IHN0eWxlZChTdGFjaylgXG4gIG1pbi13aWR0aDogMjRweDtcbmBcblxudHlwZSBUZXh0SW5wdXRQcm9wcyA9IHtcbiAgJ2RhdGEtdGVzdGlkJz86IHN0cmluZ1xuICBhcmlhQ29udHJvbHM/OiBzdHJpbmdcbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nXG4gIGF1dG9Gb2N1cz86IGJvb2xlYW5cbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gIGNvbHM/OiBudW1iZXJcbiAgZGVmYXVsdFZhbHVlPzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IHN0cmluZ1xuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxuICBnZW5lcmF0ZWQ/OiBib29sZWFuXG4gIGhlaWdodD86IHN0cmluZyB8IG51bWJlclxuICBpZD86IHN0cmluZ1xuICBsYWJlbD86IHN0cmluZ1xuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIG5hbWU/OiBzdHJpbmdcbiAgbm90aWNlPzogc3RyaW5nXG4gIG5vVG9wTGFiZWw/OiBib29sZWFuXG4gIG9uQmx1cj86IEZvY3VzRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbkNoYW5nZT86ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkXG4gIG9uRm9jdXM/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlVcD86IEtleWJvYXJkRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgcmFuZG9tPzogc3RyaW5nXG4gIHJlYWRPbmx5PzogYm9vbGVhblxuICByZXF1aXJlZD86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICByb3dzPzogbnVtYmVyXG4gIHNpemU/OiBUZXh0SW5wdXRTaXplc1xuICB0YWJJbmRleD86IG51bWJlclxuICB0eXBlPzogc3RyaW5nXG4gIHVuaXQ/OiBzdHJpbmdcbiAgdmFsaWQ/OiBib29sZWFuXG4gIHZhbHVlPzogc3RyaW5nIHwgbnVtYmVyXG4gIHdyYXA/OiBzdHJpbmdcbiAgaW5wdXRQcm9wcz86IElucHV0UHJvcHNcbiAgbWF4PzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWF4J11cbiAgbWluPzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWluJ11cbn0gJiAoXG4gIHwgT21pdDxJbnB1dEhUTUxBdHRyaWJ1dGVzPEhUTUxJbnB1dEVsZW1lbnQ+LCAnb25DaGFuZ2UnPlxuICB8IE9taXQ8VGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbilcblxuY29uc3QgVW5pdExhYmVsID0gc3R5bGVkKFRleHQpYFxuICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuYFxuXG4vKipcbiAqIFRleHRJbnB1dCBjb21wb25lbnQgYWxsb3dzIHVzZXJzIHRvIGlucHV0IHRleHQsIHdpdGggb3B0aW9ucyBmb3IgY3VzdG9taXphdGlvbiBhbmQgdmFsaWRhdGlvbi5cbiAqIEl0IHN1cHBvcnRzIHZhcmlvdXMgaW5wdXQgdHlwZXMgYW5kIHNob3VsZCBiZSBhcHByb3ByaWF0ZWx5IHNpemVkIHdpdGggY2xlYXIgbGFiZWxpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBUZXh0SW5wdXQgPSBmb3J3YXJkUmVmPFxuICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCB8IG51bGwsXG4gIFRleHRJbnB1dFByb3BzXG4+KFxuICAoXG4gICAge1xuICAgICAgJ2RhdGEtdGVzdGlkJzogZGF0YVRlc3RJZCxcbiAgICAgIGFyaWFDb250cm9scyxcbiAgICAgIGF1dG9Db21wbGV0ZSA9ICdvbicsXG4gICAgICBhdXRvRm9jdXMsXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBjb2xzLFxuICAgICAgZGVmYXVsdFZhbHVlLFxuICAgICAgZGlzYWJsZWQsXG4gICAgICBlZGl0OiBmb3JjZUVkaXQsXG4gICAgICBlcnJvcixcbiAgICAgIGZpbGxBdmFpbGFibGUsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoZWlnaHQsXG4gICAgICBpZCxcbiAgICAgIGxhYmVsLFxuICAgICAgbXVsdGlsaW5lLFxuICAgICAgbmFtZSxcbiAgICAgIG5vdGljZSxcbiAgICAgIG5vVG9wTGFiZWwgPSBmYWxzZSxcbiAgICAgIG9uQmx1cixcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgb25Gb2N1cyxcbiAgICAgIG9uS2V5VXAsXG4gICAgICBvbktleURvd24sXG4gICAgICBwbGFjZWhvbGRlcixcbiAgICAgIHJhbmRvbSxcbiAgICAgIHJlYWRPbmx5LFxuICAgICAgcmVxdWlyZWQsXG4gICAgICByZXNpemFibGUsXG4gICAgICByb3dzLFxuICAgICAgc2l6ZSA9ICdtZWRpdW0nLFxuICAgICAgdGFiSW5kZXgsXG4gICAgICB0eXBlID0gJ3RleHQnLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgdmFsdWUsXG4gICAgICB3cmFwLFxuICAgICAgaW5wdXRQcm9wcyxcbiAgICAgIG1pbixcbiAgICAgIG1heCxcbiAgICB9LFxuICAgIHJlZixcbiAgKSA9PiB7XG4gICAgY29uc3QgY29udHJvbFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKVxuXG4gICAgY29uc3QgW3Zpc2l0ZWQsIHNldFZpc2l0ZWRdID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bhc3N3b3JkVmlzaWJsZSwgc2V0UGFzc3dvcmRWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gc2V0UGFzc3dvcmRWaXNpYmxlKHggPT4gIXgpLFxuICAgICAgW10sXG4gICAgKVxuXG4gICAgLy8gRm9yd2FyZCByZWYgdG8gcGFyZW50IHJlZlxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGU8dW5rbm93biwgdW5rbm93bj4ocmVmLCAoKSA9PiBjb250cm9sUmVmLCBbXSlcblxuICAgIC8vIEZvY3VzIHdoZW4gcGFzc3dvcmQgaXMgdmlzaWJsZVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAocGFzc3dvcmRWaXNpYmxlKSB7XG4gICAgICAgIGNvbnRyb2xSZWY/LmN1cnJlbnQ/LmZvY3VzKClcbiAgICAgIH1cbiAgICB9LCBbcGFzc3dvcmRWaXNpYmxlXSlcblxuICAgIGNvbnN0IGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2sgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSgpLFxuICAgICAgW3RvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eV0sXG4gICAgKVxuXG4gICAgY29uc3QgcmFuZG9taXplID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiBvbkNoYW5nZT8uKHJhbmRvbU5hbWUocmFuZG9tKSksXG4gICAgICBbb25DaGFuZ2UsIHJhbmRvbV0sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2xpY2tSYW5kb21pemUgPSB1c2VDYWxsYmFjaygoKSA9PiByYW5kb21pemUoKSwgW3JhbmRvbWl6ZV0pXG5cbiAgICBjb25zdCBoYW5kbGVGb2N1czogRm9jdXNFdmVudEhhbmRsZXI8XG4gICAgICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudFxuICAgID4gPSB1c2VDYWxsYmFjayhcbiAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKCF2aXNpdGVkICYmICFyZWFkT25seSkge1xuICAgICAgICAgIHNldFZpc2l0ZWQodHJ1ZSlcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICAgICAgb25Gb2N1cyhldmVudClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFt2aXNpdGVkLCByZWFkT25seSwgb25Gb2N1c10sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gdXNlQ2FsbGJhY2soXG4gICAgICAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PikgPT5cbiAgICAgICAgb25DaGFuZ2U/LihldmVudC50YXJnZXQudmFsdWUpLFxuICAgICAgW29uQ2hhbmdlXSxcbiAgICApXG5cbiAgICBjb25zdCBpc1Bhc3NUb2dnbGVhYmxlID0gdHlwZSA9PT0gJ3RvZ2dsZWFibGUtcGFzc3dvcmQnXG4gICAgY29uc3QgaGFzTGFiZWwgPSAhIWxhYmVsICYmICFub1RvcExhYmVsICYmIHNpemUgPT09ICdtZWRpdW0nXG4gICAgY29uc3QgZWRpdCA9XG4gICAgICBoYXNMYWJlbCAmJiAoZm9yY2VFZGl0IHx8IHZpc2l0ZWQgfHwgdmFsdWUgfHwgZXJyb3IgfHwgZ2VuZXJhdGVkKVxuXG4gICAgY29uc3QgaXNQbGFjZWhvbGRlclZpc2libGUgPSAhaGFzTGFiZWwgfHwgISFlZGl0XG4gICAgY29uc3QgaGFzUmlnaHRFbGVtZW50ID0gISEoXG4gICAgICB2YWxpZCAhPT0gdW5kZWZpbmVkIHx8XG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlIHx8XG4gICAgICByYW5kb20gfHxcbiAgICAgIHVuaXRcbiAgICApXG5cbiAgICBjb25zdCBnZXRUeXBlID0gKCkgPT4ge1xuICAgICAgaWYgKGlzUGFzc1RvZ2dsZWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHBhc3N3b3JkVmlzaWJsZSB8fCBnZW5lcmF0ZWQgPyAndGV4dCcgOiAncGFzc3dvcmQnXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBtdWx0aWxpbmUgPyB1bmRlZmluZWQgOiB0eXBlXG4gICAgfVxuXG4gICAgY29uc3QgaW5wdXRTaXplID0gc2l6ZVxuXG4gICAgY29uc3QgcmlnaHRDb21wb25lbnRzQXJyYXkgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50cyA9IFtdXG5cbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlICYmICFnZW5lcmF0ZWQpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e1xuICAgICAgICAgICAgICBkYXRhVGVzdElkID8gYCR7ZGF0YVRlc3RJZH0tdmlzaWJpbGl0eS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPXtwYXNzd29yZFZpc2libGUgPyAnaGlkZScgOiAnc2hvdyd9XG4gICAgICAgICAgICBrZXk9XCJwYXNzd29yZC12aXNpYmxlXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2t9XG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBpY29uPXtwYXNzd29yZFZpc2libGUgPyAnZXllLW9mZicgOiAnZXllJ31cbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmIChyYW5kb20pIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAga2V5PVwicmFuZG9tXCJcbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXJhbmRvbWl6ZS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwicmFuZG9taXplXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsaWNrUmFuZG9taXplfVxuICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgaWNvbj1cImF1dG8tZml4XCJcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgICBzZW50aW1lbnQ9XCJuZXV0cmFsXCJcbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh2YWxpZCA9PT0gZmFsc2UgfHwgdmFsaWQgPT09IHRydWUpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEljb25cbiAgICAgICAgICAgIGtleT1cInZhbGlkXCJcbiAgICAgICAgICAgIG5hbWU9eyF2YWxpZCA/ICdjbG9zZScgOiAnY2hlY2snfVxuICAgICAgICAgICAgY29sb3I9eyF2YWxpZCA/ICdkYW5nZXInIDogJ3N1Y2Nlc3MnfVxuICAgICAgICAgICAgc2l6ZT17MjB9XG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh1bml0KSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxVbml0TGFiZWwga2V5PVwidW5pdFwiIHZhcmlhbnQ9XCJib2R5U21hbGxcIiBhcz1cInBcIiBwcm9taW5lbmNlPVwid2Vha1wiPlxuICAgICAgICAgICAge3VuaXR9XG4gICAgICAgICAgPC9Vbml0TGFiZWw+LFxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIHJldHVybiByaWdodENvbXBvbmVudHNcbiAgICB9LCBbXG4gICAgICBkaXNhYmxlZCxcbiAgICAgIGdlbmVyYXRlZCxcbiAgICAgIGhhbmRsZUNsaWNrUmFuZG9taXplLFxuICAgICAgaGFuZGxlUGFzc1Zpc2liaWxpdHlDbGljayxcbiAgICAgIGlzUGFzc1RvZ2dsZWFibGUsXG4gICAgICBwYXNzd29yZFZpc2libGUsXG4gICAgICByYW5kb20sXG4gICAgICB1bml0LFxuICAgICAgdmFsaWQsXG4gICAgICBkYXRhVGVzdElkLFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG93U2VwYXJhdG9yID0gKHJlcXVpcmVkICYmIGhhc1JpZ2h0RWxlbWVudCkgfHwgdW5pdFxuICAgIGNvbnN0IHBhZGRpbmdSaWdodEZhY3RvciA9IChyZXF1aXJlZCA/IDEgOiAwKSArIChzaG93U2VwYXJhdG9yID8gMC41IDogMClcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lfT5cbiAgICAgICAgPFN0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICAgIDxTdHlsZWRJbnB1dFxuICAgICAgICAgICAgYXJpYS1jb250cm9scz17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17bGFiZWwgfHwgdW5kZWZpbmVkfVxuICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtoYXNMYWJlbCA/IGFyaWFDb250cm9scyA6IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFzPXttdWx0aWxpbmUgPyAndGV4dGFyZWEnIDogJ2lucHV0J31cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17YXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXthdXRvRm9jdXN9XG4gICAgICAgICAgICBjb2xzPXtjb2xzfVxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e2RhdGFUZXN0SWR9XG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgZmlsbEF2YWlsYWJsZT17ZmlsbEF2YWlsYWJsZX1cbiAgICAgICAgICAgIGhhc0xhYmVsPXtoYXNMYWJlbH1cbiAgICAgICAgICAgIHBhZGRpbmdSaWdodEZhY3Rvcj17cGFkZGluZ1JpZ2h0RmFjdG9yfVxuICAgICAgICAgICAgcmlnaHRDb21wb25lbnRMZW5ndGg9e3JpZ2h0Q29tcG9uZW50c0FycmF5Lmxlbmd0aH1cbiAgICAgICAgICAgIHVuaXQ9e3VuaXR9XG4gICAgICAgICAgICBpZD17aWR9XG4gICAgICAgICAgICBpbnB1dFNpemU9e2lucHV0U2l6ZX1cbiAgICAgICAgICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlPXtpc1BsYWNlaG9sZGVyVmlzaWJsZX1cbiAgICAgICAgICAgIG11bHRpbGluZT17bXVsdGlsaW5lfVxuICAgICAgICAgICAgbmFtZT17bmFtZX1cbiAgICAgICAgICAgIG9uQmx1cj17b25CbHVyfVxuICAgICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgIG9uRm9jdXM9e2hhbmRsZUZvY3VzfVxuICAgICAgICAgICAgb25LZXlVcD17b25LZXlVcH1cbiAgICAgICAgICAgIG9uS2V5RG93bj17b25LZXlEb3dufVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgcmVmPXtjb250cm9sUmVmfVxuICAgICAgICAgICAgcmVzaXphYmxlPXtyZXNpemFibGV9XG4gICAgICAgICAgICByb3dzPXtyb3dzfVxuICAgICAgICAgICAgc3R5bGU9e3sgaGVpZ2h0IH19XG4gICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgICB0eXBlPXtnZXRUeXBlKCl9XG4gICAgICAgICAgICB2YWx1ZT17dmFsdWUgPT09IG51bGwgPyAnJyA6IHZhbHVlfVxuICAgICAgICAgICAgd3JhcD17d3JhcH1cbiAgICAgICAgICAgIG1pbj17bWlufVxuICAgICAgICAgICAgbWF4PXttYXh9XG4gICAgICAgICAgICByZXF1aXJlZD17cmVxdWlyZWR9XG4gICAgICAgICAgICB7Li4uaW5wdXRQcm9wc31cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtoYXNMYWJlbCAmJiAoXG4gICAgICAgICAgICA8U3R5bGVkTGFiZWxcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgZXJyb3I9eyEhZXJyb3J9XG4gICAgICAgICAgICAgIGlkPXthcmlhQ29udHJvbHN9XG4gICAgICAgICAgICAgIGh0bWxGb3I9e2lkfVxuICAgICAgICAgICAgICBhcmlhLWxpdmU9XCJhc3NlcnRpdmVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICA8L1N0eWxlZExhYmVsPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7aGFzUmlnaHRFbGVtZW50IHx8IHJlcXVpcmVkID8gKFxuICAgICAgICAgICAgPFN0eWxlZFJpZ2h0RWxlbWVudFxuICAgICAgICAgICAgICBlZGl0PXshIWVkaXR9XG4gICAgICAgICAgICAgIHRvdWNoYWJsZT17aXNQYXNzVG9nZ2xlYWJsZSB8fCAhIXJhbmRvbX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3JlcXVpcmVkID8gKFxuICAgICAgICAgICAgICAgIDxJY29uIG5hbWU9XCJhc3Rlcmlza1wiIGNvbG9yPVwiZGFuZ2VyXCIgc2l6ZT17MTB9IC8+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICB7c2hvd1NlcGFyYXRvciA/IDxTdHlsZWRTZXBhcmF0b3IgZGlyZWN0aW9uPVwidmVydGljYWxcIiAvPiA6IG51bGx9XG4gICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgIDxSaWdodENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwicm93XCJcbiAgICAgICAgICAgICAgICAgIGFsaWduSXRlbXM9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheX1cbiAgICAgICAgICAgICAgICA8L1JpZ2h0Q29tcG9uZW50PlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvU3R5bGVkUmlnaHRFbGVtZW50PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICA8RXhwYW5kYWJsZSBvcGVuZWQ9eyEhZXJyb3J9PlxuICAgICAgICAgIDxTdHlsZWRFcnJvcj57ZXJyb3J9PC9TdHlsZWRFcnJvcj5cbiAgICAgICAgPC9FeHBhbmRhYmxlPlxuICAgICAgICB7bm90aWNlID8gPFN0eWxlZE5vdGljZT57bm90aWNlfTwvU3R5bGVkTm90aWNlPiA6IG51bGx9XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH0sXG4pXG4iXX0= */"), " ", ({
115
+ error,
116
+ theme: {
117
+ colors
118
+ }
119
+ }) => error && /* @__PURE__ */ react.css("color:", colors.danger.text, ";" + (process.env.NODE_ENV === "production" ? "" : ";label:StyledLabel;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEpPIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHJhbmRvbU5hbWUgZnJvbSAnQHNjYWxld2F5L3JhbmRvbS1uYW1lJ1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB0eXBlIHtcbiAgQ2hhbmdlRXZlbnQsXG4gIEZvY3VzRXZlbnRIYW5kbGVyLFxuICBJbnB1dEhUTUxBdHRyaWJ1dGVzLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTGFiZWxIVE1MQXR0cmlidXRlcyxcbiAgVGV4dGFyZWFIVE1MQXR0cmlidXRlcyxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBmb3J3YXJkUmVmLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VJbXBlcmF0aXZlSGFuZGxlLFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJy4uL0J1dHRvbidcbmltcG9ydCB7IEV4cGFuZGFibGUgfSBmcm9tICcuLi9FeHBhbmRhYmxlJ1xuaW1wb3J0IHsgTm90aWNlIH0gZnJvbSAnLi4vTm90aWNlJ1xuaW1wb3J0IHsgU2VwYXJhdG9yIH0gZnJvbSAnLi4vU2VwYXJhdG9yJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9UZXh0J1xuXG5jb25zdCBpbnB1dFNpemVzID0ge1xuICBtZWRpdW06IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICBgLFxuICAgIGZ1bGw6IGBcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICBgLFxuICB9LFxuICBzbWFsbDoge1xuICAgIGRlZmF1bHQ6IGBcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgIGAsXG4gIH0sXG59XG5cbnR5cGUgVGV4dElucHV0U2l6ZXMgPSBrZXlvZiB0eXBlb2YgaW5wdXRTaXplc1xuXG5leHBvcnQgY29uc3QgdGV4dElucHV0U2l6ZXMgPSBPYmplY3Qua2V5cyhpbnB1dFNpemVzKSBhcyBUZXh0SW5wdXRTaXplc1tdXG5cbmNvbnN0IFN0eWxlZFNlcGFyYXRvciA9IHN0eWxlZChTZXBhcmF0b3IpYFxuICBtYXJnaW46IDFweCAwcHg7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMnB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmRTdHJvbmd9O1xuYFxudHlwZSBTdHlsZWRSaWdodEVsZW1lbnRQcm9wcyA9IHtcbiAgZWRpdD86IGJvb2xlYW5cbiAgdG91Y2hhYmxlPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZWRSaWdodEVsZW1lbnQgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnZWRpdCcsICd0b3VjaGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZFJpZ2h0RWxlbWVudFByb3BzPmBcbiAgJHsoeyB0aGVtZTogeyBjb2xvcnMsIHNwYWNlIH0gfSkgPT4gY3NzYFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDAgJHtzcGFjZVsnMSddfTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogJHtzcGFjZVsnMSddfTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRyYW5zaXRpb246XG4gICAgICB0cmFuc2Zvcm0gMTUwbXMsXG4gICAgICBjb2xvciAxNTBtcztcbiAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHRXZWFrSG92ZXJ9O1xuICAgIH1cbiAgYH1cblxuICAkeyh7IHRvdWNoYWJsZSB9KSA9PlxuICAgIHRvdWNoYWJsZSAmJlxuICAgIGNzc2BcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgPiBidXR0b24ge1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgYH1cbmBcbnR5cGUgU3R5bGVkTGFiZWxQcm9wcyA9IHtcbiAgJ2FyaWEtbGFiZWwnPzogc3RyaW5nXG4gICdhcmlhLWxpdmUnOiBzdHJpbmdcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIGVkaXQ/OiBib29sZWFuXG4gIGVycm9yPzogYm9vbGVhblxuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxufSAmIExhYmVsSFRNTEF0dHJpYnV0ZXM8SFRNTExhYmVsRWxlbWVudD5cblxuY29uc3QgU3R5bGVkTGFiZWwgPSBzdHlsZWQoJ2xhYmVsJywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbJ2VkaXQnLCAnZXJyb3InLCAncmVzaXphYmxlJywgJ2ZpbGxBdmFpbGFibGUnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZExhYmVsUHJvcHM+YFxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0OHB4O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUudHlwb2dyYXBoeS5ib2R5U21hbGx9O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEycHgpIHNjYWxlKDEpO1xuXG4gICR7KHsgZWRpdCB9KSA9PlxuICAgIGVkaXQgJiZcbiAgICBjc3NgXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOS42JSwgLTNweCkgc2NhbGUoMC44KTtcbiAgICBgfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyByZWFkT25seSwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICByZWFkT25seSAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07XG4gICAgYH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLmRhbmdlci50ZXh0fTtcbiAgICBgfVxuYFxuXG5jb25zdCBTdHlsZWRSZWxhdGl2ZURpdiA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmBcblxuY29uc3QgU3R5bGVkRXJyb3IgPSBzdHlsZWQuZGl2YFxuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5kYW5nZXIudGV4dH07XG4gIHBhZGRpbmctdG9wOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycwLjI1J119O1xuYFxuXG5jb25zdCBTdHlsZWROb3RpY2UgPSBzdHlsZWQoTm90aWNlKWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC41J119O1xuYFxuXG50eXBlIFN0eWxlZElucHV0UHJvcHMgPSB7XG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgaGFzTGFiZWw/OiBib29sZWFuXG4gIHBhZGRpbmdSaWdodEZhY3RvcjogbnVtYmVyXG4gIGlzUGxhY2Vob2xkZXJWaXNpYmxlPzogYm9vbGVhblxuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgaW5wdXRTaXplOiBUZXh0SW5wdXRTaXplc1xuICB1bml0Pzogc3RyaW5nXG4gIHJpZ2h0Q29tcG9uZW50TGVuZ3RoOiBudW1iZXJcbn0gJiAoXG4gIHwgSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlxuICB8IFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD5cbilcblxudHlwZSBJbnB1dFByb3BzID0gT21pdDxcbiAgRXhjbHVkZTxTdHlsZWRJbnB1dFByb3BzLCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+PixcbiAgJ2lucHV0U2l6ZSdcbj5cblxuY29uc3QgU3R5bGVkSW5wdXQgPSBzdHlsZWQoJ2lucHV0Jywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbXG4gICAgICAnYXMnLFxuICAgICAgJ2Vycm9yJyxcbiAgICAgICdmaWxsQXZhaWxhYmxlJyxcbiAgICAgICdoYXNMYWJlbCcsXG4gICAgICAnaXNQbGFjZWhvbGRlclZpc2libGUnLFxuICAgICAgJ211bHRpbGluZScsXG4gICAgICAncmVzaXphYmxlJyxcbiAgICAgICdpbnB1dFNpemUnLFxuICAgICAgJ3BhZGRpbmdSaWdodEZhY3RvcicsXG4gICAgICAncmlnaHRDb21wb25lbnRMZW5ndGgnLFxuICAgICAgJ3VuaXQnLFxuICAgIF0uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRJbnB1dFByb3BzPmBcbiAgdHJhbnNpdGlvbjpcbiAgICBib3JkZXItY29sb3IgMC4ycyBlYXNlLFxuICAgIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJhY2tncm91bmR9O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLmJvcmRlcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHsgdGhlbWU6IHsgcmFkaWkgfSB9KSA9PiByYWRpaS5kZWZhdWx0fTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dH07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy1yaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHRXZWFrfTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR7KHsgdGhlbWU6IHsgc2hhZG93cyB9IH0pID0+IHNoYWRvd3MuZm9jdXNQcmltYXJ5fTtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLnByaW1hcnkuYm9yZGVySG92ZXJ9O1xuICB9XG5cbiAgJHsoeyBpc1BsYWNlaG9sZGVyVmlzaWJsZSB9KSA9PlxuICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlICYmXG4gICAgYCY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfWB9XG5cbiAgJHsoeyBkaXNhYmxlZCwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBkaXNhYmxlZCAmJlxuICAgIGBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kRGlzYWJsZWR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMubmV1dHJhbC5ib3JkZXJEaXNhYmxlZH07XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dH07YH1cblxuICAkeyh7IGlucHV0U2l6ZSB9KSA9PiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmRlZmF1bHR9XG5cbiAgJHsoeyBpbnB1dFNpemUsIGhhc0xhYmVsIH0pID0+XG4gICAgISFpbnB1dFNpemUgJiYgIWhhc0xhYmVsICYmIGlucHV0U2l6ZXNbaW5wdXRTaXplXT8uZnVsbH1cblxuICAkeyh7IGVycm9yLCB0aGVtZTogeyBjb2xvcnMsIHNoYWRvd3MgfSB9KSA9PlxuICAgIGVycm9yICYmXG4gICAgYGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlcn07XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAke2NvbG9ycy5kYW5nZXIuYm9yZGVySG92ZXJ9O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogJHtzaGFkb3dzLmZvY3VzRGFuZ2VyfTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9YH1cblxuICAgICR7KHsgbXVsdGlsaW5lLCByZXNpemFibGUsIGZpbGxBdmFpbGFibGUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgaGVpZ2h0OiAke2ZpbGxBdmFpbGFibGUgPyAnMTAwJScgOiAnaW5pdGlhbCd9O1xuICAgIHJlc2l6ZTogJHtyZXNpemFibGUgPT09IGZhbHNlID8gJ25vbmUnIDogJ3ZlcnRpY2FsJ307XG4gIGB9XG5cbiAgJHsoeyBtdWx0aWxpbmUsIGhhc0xhYmVsLCB0aGVtZSB9KSA9PlxuICAgIG11bHRpbGluZSAmJlxuICAgICFoYXNMYWJlbCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXRvcDogJHt0aGVtZS5zcGFjZVsnMSddfTtcbiAgYH1cblxuICAkeyh7IHBhZGRpbmdSaWdodEZhY3RvciwgcmlnaHRDb21wb25lbnRMZW5ndGgsIHVuaXQsIHRoZW1lIH0pID0+XG4gICAgcGFkZGluZ1JpZ2h0RmFjdG9yID4gMCAmJlxuICAgIGBcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCR7XG4gICAgICB1bml0ID8gYCR7dW5pdC5sZW5ndGh9ICogJHt0aGVtZS5zcGFjZVsnMSddfSArIGAgOiAnJ1xuICAgIH0ke1xuICAgICAgcGFkZGluZ1JpZ2h0RmFjdG9yICtcbiAgICAgICh1bml0ID8gcmlnaHRDb21wb25lbnRMZW5ndGggLSAxIDogcmlnaHRDb21wb25lbnRMZW5ndGgpXG4gICAgfSAqICR7dGhlbWUuc3BhY2VbJzQnXX0pO1xuICBgfVxuYFxuXG5jb25zdCBSaWdodENvbXBvbmVudCA9IHN0eWxlZChTdGFjaylgXG4gIG1pbi13aWR0aDogMjRweDtcbmBcblxudHlwZSBUZXh0SW5wdXRQcm9wcyA9IHtcbiAgJ2RhdGEtdGVzdGlkJz86IHN0cmluZ1xuICBhcmlhQ29udHJvbHM/OiBzdHJpbmdcbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nXG4gIGF1dG9Gb2N1cz86IGJvb2xlYW5cbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gIGNvbHM/OiBudW1iZXJcbiAgZGVmYXVsdFZhbHVlPzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IHN0cmluZ1xuICBmaWxsQXZhaWxhYmxlPzogYm9vbGVhblxuICBnZW5lcmF0ZWQ/OiBib29sZWFuXG4gIGhlaWdodD86IHN0cmluZyB8IG51bWJlclxuICBpZD86IHN0cmluZ1xuICBsYWJlbD86IHN0cmluZ1xuICBtdWx0aWxpbmU/OiBib29sZWFuXG4gIG5hbWU/OiBzdHJpbmdcbiAgbm90aWNlPzogc3RyaW5nXG4gIG5vVG9wTGFiZWw/OiBib29sZWFuXG4gIG9uQmx1cj86IEZvY3VzRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbkNoYW5nZT86ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkXG4gIG9uRm9jdXM/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlVcD86IEtleWJvYXJkRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PlxuICBvbktleURvd24/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgcmFuZG9tPzogc3RyaW5nXG4gIHJlYWRPbmx5PzogYm9vbGVhblxuICByZXF1aXJlZD86IGJvb2xlYW5cbiAgcmVzaXphYmxlPzogYm9vbGVhblxuICByb3dzPzogbnVtYmVyXG4gIHNpemU/OiBUZXh0SW5wdXRTaXplc1xuICB0YWJJbmRleD86IG51bWJlclxuICB0eXBlPzogc3RyaW5nXG4gIHVuaXQ/OiBzdHJpbmdcbiAgdmFsaWQ/OiBib29sZWFuXG4gIHZhbHVlPzogc3RyaW5nIHwgbnVtYmVyXG4gIHdyYXA/OiBzdHJpbmdcbiAgaW5wdXRQcm9wcz86IElucHV0UHJvcHNcbiAgbWF4PzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWF4J11cbiAgbWluPzogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PlsnbWluJ11cbn0gJiAoXG4gIHwgT21pdDxJbnB1dEhUTUxBdHRyaWJ1dGVzPEhUTUxJbnB1dEVsZW1lbnQ+LCAnb25DaGFuZ2UnPlxuICB8IE9taXQ8VGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbilcblxuY29uc3QgVW5pdExhYmVsID0gc3R5bGVkKFRleHQpYFxuICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuYFxuXG4vKipcbiAqIFRleHRJbnB1dCBjb21wb25lbnQgYWxsb3dzIHVzZXJzIHRvIGlucHV0IHRleHQsIHdpdGggb3B0aW9ucyBmb3IgY3VzdG9taXphdGlvbiBhbmQgdmFsaWRhdGlvbi5cbiAqIEl0IHN1cHBvcnRzIHZhcmlvdXMgaW5wdXQgdHlwZXMgYW5kIHNob3VsZCBiZSBhcHByb3ByaWF0ZWx5IHNpemVkIHdpdGggY2xlYXIgbGFiZWxpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBUZXh0SW5wdXQgPSBmb3J3YXJkUmVmPFxuICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCB8IG51bGwsXG4gIFRleHRJbnB1dFByb3BzXG4+KFxuICAoXG4gICAge1xuICAgICAgJ2RhdGEtdGVzdGlkJzogZGF0YVRlc3RJZCxcbiAgICAgIGFyaWFDb250cm9scyxcbiAgICAgIGF1dG9Db21wbGV0ZSA9ICdvbicsXG4gICAgICBhdXRvRm9jdXMsXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBjb2xzLFxuICAgICAgZGVmYXVsdFZhbHVlLFxuICAgICAgZGlzYWJsZWQsXG4gICAgICBlZGl0OiBmb3JjZUVkaXQsXG4gICAgICBlcnJvcixcbiAgICAgIGZpbGxBdmFpbGFibGUsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoZWlnaHQsXG4gICAgICBpZCxcbiAgICAgIGxhYmVsLFxuICAgICAgbXVsdGlsaW5lLFxuICAgICAgbmFtZSxcbiAgICAgIG5vdGljZSxcbiAgICAgIG5vVG9wTGFiZWwgPSBmYWxzZSxcbiAgICAgIG9uQmx1cixcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgb25Gb2N1cyxcbiAgICAgIG9uS2V5VXAsXG4gICAgICBvbktleURvd24sXG4gICAgICBwbGFjZWhvbGRlcixcbiAgICAgIHJhbmRvbSxcbiAgICAgIHJlYWRPbmx5LFxuICAgICAgcmVxdWlyZWQsXG4gICAgICByZXNpemFibGUsXG4gICAgICByb3dzLFxuICAgICAgc2l6ZSA9ICdtZWRpdW0nLFxuICAgICAgdGFiSW5kZXgsXG4gICAgICB0eXBlID0gJ3RleHQnLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgdmFsdWUsXG4gICAgICB3cmFwLFxuICAgICAgaW5wdXRQcm9wcyxcbiAgICAgIG1pbixcbiAgICAgIG1heCxcbiAgICB9LFxuICAgIHJlZixcbiAgKSA9PiB7XG4gICAgY29uc3QgY29udHJvbFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKVxuXG4gICAgY29uc3QgW3Zpc2l0ZWQsIHNldFZpc2l0ZWRdID0gdXNlU3RhdGUoZmFsc2UpXG4gICAgY29uc3QgW3Bhc3N3b3JkVmlzaWJsZSwgc2V0UGFzc3dvcmRWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gc2V0UGFzc3dvcmRWaXNpYmxlKHggPT4gIXgpLFxuICAgICAgW10sXG4gICAgKVxuXG4gICAgLy8gRm9yd2FyZCByZWYgdG8gcGFyZW50IHJlZlxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGU8dW5rbm93biwgdW5rbm93bj4ocmVmLCAoKSA9PiBjb250cm9sUmVmLCBbXSlcblxuICAgIC8vIEZvY3VzIHdoZW4gcGFzc3dvcmQgaXMgdmlzaWJsZVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAocGFzc3dvcmRWaXNpYmxlKSB7XG4gICAgICAgIGNvbnRyb2xSZWY/LmN1cnJlbnQ/LmZvY3VzKClcbiAgICAgIH1cbiAgICB9LCBbcGFzc3dvcmRWaXNpYmxlXSlcblxuICAgIGNvbnN0IGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2sgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHRvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eSgpLFxuICAgICAgW3RvZ2dsZVBhc3N3b3JkVmlzaWJpbGl0eV0sXG4gICAgKVxuXG4gICAgY29uc3QgcmFuZG9taXplID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiBvbkNoYW5nZT8uKHJhbmRvbU5hbWUocmFuZG9tKSksXG4gICAgICBbb25DaGFuZ2UsIHJhbmRvbV0sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2xpY2tSYW5kb21pemUgPSB1c2VDYWxsYmFjaygoKSA9PiByYW5kb21pemUoKSwgW3JhbmRvbWl6ZV0pXG5cbiAgICBjb25zdCBoYW5kbGVGb2N1czogRm9jdXNFdmVudEhhbmRsZXI8XG4gICAgICBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudFxuICAgID4gPSB1c2VDYWxsYmFjayhcbiAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKCF2aXNpdGVkICYmICFyZWFkT25seSkge1xuICAgICAgICAgIHNldFZpc2l0ZWQodHJ1ZSlcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICAgICAgb25Gb2N1cyhldmVudClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFt2aXNpdGVkLCByZWFkT25seSwgb25Gb2N1c10sXG4gICAgKVxuXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gdXNlQ2FsbGJhY2soXG4gICAgICAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PikgPT5cbiAgICAgICAgb25DaGFuZ2U/LihldmVudC50YXJnZXQudmFsdWUpLFxuICAgICAgW29uQ2hhbmdlXSxcbiAgICApXG5cbiAgICBjb25zdCBpc1Bhc3NUb2dnbGVhYmxlID0gdHlwZSA9PT0gJ3RvZ2dsZWFibGUtcGFzc3dvcmQnXG4gICAgY29uc3QgaGFzTGFiZWwgPSAhIWxhYmVsICYmICFub1RvcExhYmVsICYmIHNpemUgPT09ICdtZWRpdW0nXG4gICAgY29uc3QgZWRpdCA9XG4gICAgICBoYXNMYWJlbCAmJiAoZm9yY2VFZGl0IHx8IHZpc2l0ZWQgfHwgdmFsdWUgfHwgZXJyb3IgfHwgZ2VuZXJhdGVkKVxuXG4gICAgY29uc3QgaXNQbGFjZWhvbGRlclZpc2libGUgPSAhaGFzTGFiZWwgfHwgISFlZGl0XG4gICAgY29uc3QgaGFzUmlnaHRFbGVtZW50ID0gISEoXG4gICAgICB2YWxpZCAhPT0gdW5kZWZpbmVkIHx8XG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlIHx8XG4gICAgICByYW5kb20gfHxcbiAgICAgIHVuaXRcbiAgICApXG5cbiAgICBjb25zdCBnZXRUeXBlID0gKCkgPT4ge1xuICAgICAgaWYgKGlzUGFzc1RvZ2dsZWFibGUpIHtcbiAgICAgICAgcmV0dXJuIHBhc3N3b3JkVmlzaWJsZSB8fCBnZW5lcmF0ZWQgPyAndGV4dCcgOiAncGFzc3dvcmQnXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBtdWx0aWxpbmUgPyB1bmRlZmluZWQgOiB0eXBlXG4gICAgfVxuXG4gICAgY29uc3QgaW5wdXRTaXplID0gc2l6ZVxuXG4gICAgY29uc3QgcmlnaHRDb21wb25lbnRzQXJyYXkgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50cyA9IFtdXG5cbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlICYmICFnZW5lcmF0ZWQpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e1xuICAgICAgICAgICAgICBkYXRhVGVzdElkID8gYCR7ZGF0YVRlc3RJZH0tdmlzaWJpbGl0eS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPXtwYXNzd29yZFZpc2libGUgPyAnaGlkZScgOiAnc2hvdyd9XG4gICAgICAgICAgICBrZXk9XCJwYXNzd29yZC12aXNpYmxlXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2t9XG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBpY29uPXtwYXNzd29yZFZpc2libGUgPyAnZXllLW9mZicgOiAnZXllJ31cbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmIChyYW5kb20pIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAga2V5PVwicmFuZG9tXCJcbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXJhbmRvbWl6ZS1idXR0b25gIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwicmFuZG9taXplXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsaWNrUmFuZG9taXplfVxuICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgaWNvbj1cImF1dG8tZml4XCJcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgICBzZW50aW1lbnQ9XCJuZXV0cmFsXCJcbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh2YWxpZCA9PT0gZmFsc2UgfHwgdmFsaWQgPT09IHRydWUpIHtcbiAgICAgICAgcmlnaHRDb21wb25lbnRzLnB1c2goXG4gICAgICAgICAgPEljb25cbiAgICAgICAgICAgIGtleT1cInZhbGlkXCJcbiAgICAgICAgICAgIG5hbWU9eyF2YWxpZCA/ICdjbG9zZScgOiAnY2hlY2snfVxuICAgICAgICAgICAgY29sb3I9eyF2YWxpZCA/ICdkYW5nZXInIDogJ3N1Y2Nlc3MnfVxuICAgICAgICAgICAgc2l6ZT17MjB9XG4gICAgICAgICAgLz4sXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmICh1bml0KSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxVbml0TGFiZWwga2V5PVwidW5pdFwiIHZhcmlhbnQ9XCJib2R5U21hbGxcIiBhcz1cInBcIiBwcm9taW5lbmNlPVwid2Vha1wiPlxuICAgICAgICAgICAge3VuaXR9XG4gICAgICAgICAgPC9Vbml0TGFiZWw+LFxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIHJldHVybiByaWdodENvbXBvbmVudHNcbiAgICB9LCBbXG4gICAgICBkaXNhYmxlZCxcbiAgICAgIGdlbmVyYXRlZCxcbiAgICAgIGhhbmRsZUNsaWNrUmFuZG9taXplLFxuICAgICAgaGFuZGxlUGFzc1Zpc2liaWxpdHlDbGljayxcbiAgICAgIGlzUGFzc1RvZ2dsZWFibGUsXG4gICAgICBwYXNzd29yZFZpc2libGUsXG4gICAgICByYW5kb20sXG4gICAgICB1bml0LFxuICAgICAgdmFsaWQsXG4gICAgICBkYXRhVGVzdElkLFxuICAgIF0pXG5cbiAgICBjb25zdCBzaG93U2VwYXJhdG9yID0gKHJlcXVpcmVkICYmIGhhc1JpZ2h0RWxlbWVudCkgfHwgdW5pdFxuICAgIGNvbnN0IHBhZGRpbmdSaWdodEZhY3RvciA9IChyZXF1aXJlZCA/IDEgOiAwKSArIChzaG93U2VwYXJhdG9yID8gMC41IDogMClcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lfT5cbiAgICAgICAgPFN0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICAgIDxTdHlsZWRJbnB1dFxuICAgICAgICAgICAgYXJpYS1jb250cm9scz17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17bGFiZWwgfHwgdW5kZWZpbmVkfVxuICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtoYXNMYWJlbCA/IGFyaWFDb250cm9scyA6IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFzPXttdWx0aWxpbmUgPyAndGV4dGFyZWEnIDogJ2lucHV0J31cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17YXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXthdXRvRm9jdXN9XG4gICAgICAgICAgICBjb2xzPXtjb2xzfVxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9e2RhdGFUZXN0SWR9XG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgZmlsbEF2YWlsYWJsZT17ZmlsbEF2YWlsYWJsZX1cbiAgICAgICAgICAgIGhhc0xhYmVsPXtoYXNMYWJlbH1cbiAgICAgICAgICAgIHBhZGRpbmdSaWdodEZhY3Rvcj17cGFkZGluZ1JpZ2h0RmFjdG9yfVxuICAgICAgICAgICAgcmlnaHRDb21wb25lbnRMZW5ndGg9e3JpZ2h0Q29tcG9uZW50c0FycmF5Lmxlbmd0aH1cbiAgICAgICAgICAgIHVuaXQ9e3VuaXR9XG4gICAgICAgICAgICBpZD17aWR9XG4gICAgICAgICAgICBpbnB1dFNpemU9e2lucHV0U2l6ZX1cbiAgICAgICAgICAgIGlzUGxhY2Vob2xkZXJWaXNpYmxlPXtpc1BsYWNlaG9sZGVyVmlzaWJsZX1cbiAgICAgICAgICAgIG11bHRpbGluZT17bXVsdGlsaW5lfVxuICAgICAgICAgICAgbmFtZT17bmFtZX1cbiAgICAgICAgICAgIG9uQmx1cj17b25CbHVyfVxuICAgICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgIG9uRm9jdXM9e2hhbmRsZUZvY3VzfVxuICAgICAgICAgICAgb25LZXlVcD17b25LZXlVcH1cbiAgICAgICAgICAgIG9uS2V5RG93bj17b25LZXlEb3dufVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgcmVmPXtjb250cm9sUmVmfVxuICAgICAgICAgICAgcmVzaXphYmxlPXtyZXNpemFibGV9XG4gICAgICAgICAgICByb3dzPXtyb3dzfVxuICAgICAgICAgICAgc3R5bGU9e3sgaGVpZ2h0IH19XG4gICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgICB0eXBlPXtnZXRUeXBlKCl9XG4gICAgICAgICAgICB2YWx1ZT17dmFsdWUgPT09IG51bGwgPyAnJyA6IHZhbHVlfVxuICAgICAgICAgICAgd3JhcD17d3JhcH1cbiAgICAgICAgICAgIG1pbj17bWlufVxuICAgICAgICAgICAgbWF4PXttYXh9XG4gICAgICAgICAgICByZXF1aXJlZD17cmVxdWlyZWR9XG4gICAgICAgICAgICB7Li4uaW5wdXRQcm9wc31cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtoYXNMYWJlbCAmJiAoXG4gICAgICAgICAgICA8U3R5bGVkTGFiZWxcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgZXJyb3I9eyEhZXJyb3J9XG4gICAgICAgICAgICAgIGlkPXthcmlhQ29udHJvbHN9XG4gICAgICAgICAgICAgIGh0bWxGb3I9e2lkfVxuICAgICAgICAgICAgICBhcmlhLWxpdmU9XCJhc3NlcnRpdmVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICA8L1N0eWxlZExhYmVsPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7aGFzUmlnaHRFbGVtZW50IHx8IHJlcXVpcmVkID8gKFxuICAgICAgICAgICAgPFN0eWxlZFJpZ2h0RWxlbWVudFxuICAgICAgICAgICAgICBlZGl0PXshIWVkaXR9XG4gICAgICAgICAgICAgIHRvdWNoYWJsZT17aXNQYXNzVG9nZ2xlYWJsZSB8fCAhIXJhbmRvbX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3JlcXVpcmVkID8gKFxuICAgICAgICAgICAgICAgIDxJY29uIG5hbWU9XCJhc3Rlcmlza1wiIGNvbG9yPVwiZGFuZ2VyXCIgc2l6ZT17MTB9IC8+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICB7c2hvd1NlcGFyYXRvciA/IDxTdHlsZWRTZXBhcmF0b3IgZGlyZWN0aW9uPVwidmVydGljYWxcIiAvPiA6IG51bGx9XG4gICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgIDxSaWdodENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwicm93XCJcbiAgICAgICAgICAgICAgICAgIGFsaWduSXRlbXM9XCJjZW50ZXJcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtyaWdodENvbXBvbmVudHNBcnJheX1cbiAgICAgICAgICAgICAgICA8L1JpZ2h0Q29tcG9uZW50PlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvU3R5bGVkUmlnaHRFbGVtZW50PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0eWxlZFJlbGF0aXZlRGl2PlxuICAgICAgICA8RXhwYW5kYWJsZSBvcGVuZWQ9eyEhZXJyb3J9PlxuICAgICAgICAgIDxTdHlsZWRFcnJvcj57ZXJyb3J9PC9TdHlsZWRFcnJvcj5cbiAgICAgICAgPC9FeHBhbmRhYmxlPlxuICAgICAgICB7bm90aWNlID8gPFN0eWxlZE5vdGljZT57bm90aWNlfTwvU3R5bGVkTm90aWNlPiA6IG51bGx9XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH0sXG4pXG4iXX0= */"), ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0hvQiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
120
+ const StyledRelativeDiv = /* @__PURE__ */ _styled__default.default("div", process.env.NODE_ENV === "production" ? {
121
+ target: "el3h3g95"
122
+ } : {
123
+ target: "el3h3g95",
124
+ label: "StyledRelativeDiv"
125
+ })(process.env.NODE_ENV === "production" ? {
126
+ name: "bjn8wh",
127
+ styles: "position:relative"
128
+ } : {
129
+ name: "bjn8wh",
130
+ styles: "position:relative",
131
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0pvQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */",
132
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
133
+ });
134
+ const StyledError = /* @__PURE__ */ _styled__default.default("div", process.env.NODE_ENV === "production" ? {
135
+ target: "el3h3g94"
136
+ } : {
137
+ target: "el3h3g94",
138
+ label: "StyledError"
139
+ })("font-size:12px;color:", ({
140
+ theme
141
+ }) => theme.colors.danger.text, ";padding-top:", ({
142
+ theme
143
+ }) => theme.space["0.25"], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBbUs4QiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
144
+ const StyledNotice = /* @__PURE__ */ _styled__default.default(index$1.Notice, process.env.NODE_ENV === "production" ? {
145
+ target: "el3h3g93"
146
+ } : {
147
+ target: "el3h3g93",
148
+ label: "StyledNotice"
149
+ })("margin-top:", ({
150
+ theme
151
+ }) => theme.space["0.5"], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeUttQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
152
+ const StyledInput = /* @__PURE__ */ _styled__default.default("input", process.env.NODE_ENV === "production" ? {
153
+ shouldForwardProp: (prop) => !["as", "error", "fillAvailable", "hasLabel", "isPlaceholderVisible", "multiline", "resizable", "inputSize", "paddingRightFactor", "rightComponentLength", "unit"].includes(prop),
154
+ target: "el3h3g92"
155
+ } : {
156
+ shouldForwardProp: (prop) => !["as", "error", "fillAvailable", "hasLabel", "isPlaceholderVisible", "multiline", "resizable", "inputSize", "paddingRightFactor", "rightComponentLength", "unit"].includes(prop),
157
+ target: "el3h3g92",
158
+ label: "StyledInput"
159
+ })("transition:border-color 0.2s ease,box-shadow 0.2s ease;appearance:none;background-color:", ({
160
+ theme: {
161
+ colors
162
+ }
163
+ }) => colors.neutral.background, ";background-image:none;border:1px solid ", ({
164
+ theme: {
165
+ colors
166
+ }
167
+ }) => colors.neutral.border, ";border-radius:", ({
168
+ theme: {
169
+ radii
170
+ }
171
+ }) => radii.default, ";color:", ({
172
+ theme: {
173
+ colors
174
+ }
175
+ }) => colors.neutral.text, ";display:block;max-width:100%;outline:none;position:relative;width:100%;padding-left:", ({
176
+ theme
177
+ }) => theme.space["1"], ";padding-right:", ({
178
+ theme
179
+ }) => theme.space["1"], ";padding-top:14px;font-size:16px;line-height:24px;&::placeholder{color:", ({
180
+ theme: {
181
+ colors
182
+ }
183
+ }) => colors.neutral.textWeak, ";opacity:0;}&:hover,&:focus{border-color:", ({
184
+ theme: {
185
+ colors
186
+ }
187
+ }) => colors.primary.borderHover, ";}&:focus{box-shadow:", ({
188
+ theme: {
189
+ shadows
190
+ }
191
+ }) => shadows.focusPrimary, ";border-color:", ({
192
+ theme: {
193
+ colors
194
+ }
195
+ }) => colors.primary.borderHover, ";}", ({
196
+ isPlaceholderVisible
197
+ }) => isPlaceholderVisible && `&::placeholder {
198
+ opacity: 1;
199
+ }`, " ", ({
200
+ disabled,
201
+ theme: {
202
+ colors
203
+ }
204
+ }) => disabled && `cursor: default;
205
+ pointer-events: none;
206
+ background-color: ${colors.neutral.backgroundDisabled};
207
+ border-color: ${colors.neutral.borderDisabled};
208
+ color: ${colors.neutral.textDisabled};`, " ", ({
209
+ readOnly,
210
+ theme: {
211
+ colors
212
+ }
213
+ }) => readOnly && `background-color: ${colors.neutral.backgroundDisabled};
214
+ border-color: ${colors.neutral.borderDisabled};
215
+ color: ${colors.neutral.text};`, " ", ({
216
+ inputSize
217
+ }) => inputSizes[inputSize]?.default, " ", ({
218
+ inputSize,
219
+ hasLabel
220
+ }) => !!inputSize && !hasLabel && inputSizes[inputSize]?.full, " ", ({
221
+ error,
222
+ theme: {
223
+ colors,
224
+ shadows
225
+ }
226
+ }) => error && `border-color: ${colors.danger.border};
227
+
228
+ &:hover,
229
+ &:focus {
230
+ border-color: ${colors.danger.borderHover};
231
+ }
232
+
233
+ &:focus {
234
+ box-shadow: ${shadows.focusDanger};
235
+ border-color: ${colors.danger.borderHover};
236
+ }`, " ", ({
237
+ multiline,
238
+ resizable,
239
+ fillAvailable
240
+ }) => multiline && `
241
+ padding-top: 20px;
242
+ height: ${fillAvailable ? "100%" : "initial"};
243
+ resize: ${resizable === false ? "none" : "vertical"};
244
+ `, " ", ({
245
+ multiline,
246
+ hasLabel,
247
+ theme
248
+ }) => multiline && !hasLabel && `
249
+ padding-top: ${theme.space["1"]};
250
+ `, " ", ({
251
+ paddingRightFactor,
252
+ rightComponentLength,
253
+ unit,
254
+ theme
255
+ }) => paddingRightFactor > 0 && `
256
+ padding-right: calc(${unit ? `${unit.length} * ${theme.space["1"]} + ` : ""}${paddingRightFactor + (unit ? rightComponentLength - 1 : rightComponentLength)} * ${theme.space["4"]});
257
+ `, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa05vQiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
258
+ const RightComponent = /* @__PURE__ */ _styled__default.default(index$2.Stack, process.env.NODE_ENV === "production" ? {
259
+ target: "el3h3g91"
260
+ } : {
261
+ target: "el3h3g91",
262
+ label: "RightComponent"
263
+ })(process.env.NODE_ENV === "production" ? {
264
+ name: "9bmev",
265
+ styles: "min-width:24px"
266
+ } : {
267
+ name: "9bmev",
268
+ styles: "min-width:24px",
269
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd1RvQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */",
270
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
271
+ });
272
+ const UnitLabel = /* @__PURE__ */ _styled__default.default(index$3.Text, process.env.NODE_ENV === "production" ? {
273
+ target: "el3h3g90"
274
+ } : {
275
+ target: "el3h3g90",
276
+ label: "UnitLabel"
277
+ })("padding:", ({
278
+ theme
279
+ }) => theme.space["1"], " 0;line-height:18px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1RleHRJbnB1dC9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMFc4QiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9UZXh0SW5wdXQvaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCByYW5kb21OYW1lIGZyb20gJ0BzY2FsZXdheS9yYW5kb20tbmFtZSdcbmltcG9ydCB7IEljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5nZUV2ZW50LFxuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgSW5wdXRIVE1MQXR0cmlidXRlcyxcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIExhYmVsSFRNTEF0dHJpYnV0ZXMsXG4gIFRleHRhcmVhSFRNTEF0dHJpYnV0ZXMsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgZm9yd2FyZFJlZixcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nXG5pbXBvcnQgeyBFeHBhbmRhYmxlIH0gZnJvbSAnLi4vRXhwYW5kYWJsZSdcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gJy4uL05vdGljZSdcbmltcG9ydCB7IFNlcGFyYXRvciB9IGZyb20gJy4uL1NlcGFyYXRvcidcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vVGV4dCdcblxuY29uc3QgaW5wdXRTaXplcyA9IHtcbiAgbWVkaXVtOiB7XG4gICAgZGVmYXVsdDogYFxuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgYCxcbiAgICBmdWxsOiBgXG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgYCxcbiAgfSxcbiAgc21hbGw6IHtcbiAgICBkZWZhdWx0OiBgXG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGAsXG4gICAgZnVsbDogYFxuICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBgLFxuICB9LFxufVxuXG50eXBlIFRleHRJbnB1dFNpemVzID0ga2V5b2YgdHlwZW9mIGlucHV0U2l6ZXNcblxuZXhwb3J0IGNvbnN0IHRleHRJbnB1dFNpemVzID0gT2JqZWN0LmtleXMoaW5wdXRTaXplcykgYXMgVGV4dElucHV0U2l6ZXNbXVxuXG5jb25zdCBTdHlsZWRTZXBhcmF0b3IgPSBzdHlsZWQoU2VwYXJhdG9yKWBcbiAgbWFyZ2luOiAxcHggMHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kU3Ryb25nfTtcbmBcbnR5cGUgU3R5bGVkUmlnaHRFbGVtZW50UHJvcHMgPSB7XG4gIGVkaXQ/OiBib29sZWFuXG4gIHRvdWNoYWJsZT86IGJvb2xlYW5cbn1cblxuY29uc3QgU3R5bGVkUmlnaHRFbGVtZW50ID0gc3R5bGVkKCdkaXYnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+ICFbJ2VkaXQnLCAndG91Y2hhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRSaWdodEVsZW1lbnRQcm9wcz5gXG4gICR7KHsgdGhlbWU6IHsgY29sb3JzLCBzcGFjZSB9IH0pID0+IGNzc2BcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwICR7c3BhY2VbJzEnXX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICR7c3BhY2VbJzEnXX07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIDE1MG1zLFxuICAgICAgY29sb3IgMTUwbXM7XG4gICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0V2Vha0hvdmVyfTtcbiAgICB9XG4gIGB9XG5cbiAgJHsoeyB0b3VjaGFibGUgfSkgPT5cbiAgICB0b3VjaGFibGUgJiZcbiAgICBjc3NgXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIGB9XG5gXG50eXBlIFN0eWxlZExhYmVsUHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJz86IHN0cmluZ1xuICAnYXJpYS1saXZlJzogc3RyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBlZGl0PzogYm9vbGVhblxuICBlcnJvcj86IGJvb2xlYW5cbiAgcmVhZE9ubHk/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbn0gJiBMYWJlbEhUTUxBdHRyaWJ1dGVzPEhUTUxMYWJlbEVsZW1lbnQ+XG5cbmNvbnN0IFN0eWxlZExhYmVsID0gc3R5bGVkKCdsYWJlbCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhWydlZGl0JywgJ2Vycm9yJywgJ3Jlc2l6YWJsZScsICdmaWxsQXZhaWxhYmxlJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWRMYWJlbFByb3BzPmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR7KHsgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT4gY29sb3JzLm5ldXRyYWwudGV4dFdlYWt9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDhweDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsfTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMnB4KSBzY2FsZSgxKTtcblxuICAkeyh7IGVkaXQgfSkgPT5cbiAgICBlZGl0ICYmXG4gICAgY3NzYFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTkuNiUsIC0zcHgpIHNjYWxlKDAuOCk7XG4gICAgYH1cblxuICAkeyh7IGRpc2FibGVkLCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIGRpc2FibGVkICYmXG4gICAgY3NzYFxuICAgICAgY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwudGV4dERpc2FibGVkfTtcbiAgICBgfVxuXG4gICR7KHsgcmVhZE9ubHksIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgcmVhZE9ubHkgJiZcbiAgICBjc3NgXG4gICAgICBjb2xvcjogJHtjb2xvcnMubmV1dHJhbC50ZXh0RGlzYWJsZWR9O1xuICAgIGB9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGNzc2BcbiAgICAgIGNvbG9yOiAke2NvbG9ycy5kYW5nZXIudGV4dH07XG4gICAgYH1cbmBcblxuY29uc3QgU3R5bGVkUmVsYXRpdmVEaXYgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gXG5cbmNvbnN0IFN0eWxlZEVycm9yID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuZGFuZ2VyLnRleHR9O1xuICBwYWRkaW5nLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMC4yNSddfTtcbmBcblxuY29uc3QgU3R5bGVkTm90aWNlID0gc3R5bGVkKE5vdGljZSlgXG4gIG1hcmdpbi10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzAuNSddfTtcbmBcblxudHlwZSBTdHlsZWRJbnB1dFByb3BzID0ge1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZXJyb3I/OiBib29sZWFuXG4gIGZpbGxBdmFpbGFibGU/OiBib29sZWFuXG4gIGhhc0xhYmVsPzogYm9vbGVhblxuICBwYWRkaW5nUmlnaHRGYWN0b3I6IG51bWJlclxuICBpc1BsYWNlaG9sZGVyVmlzaWJsZT86IGJvb2xlYW5cbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICByZXNpemFibGU/OiBib29sZWFuXG4gIGlucHV0U2l6ZTogVGV4dElucHV0U2l6ZXNcbiAgdW5pdD86IHN0cmluZ1xuICByaWdodENvbXBvbmVudExlbmd0aDogbnVtYmVyXG59ICYgKFxuICB8IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5cbiAgfCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4pXG5cbnR5cGUgSW5wdXRQcm9wcyA9IE9taXQ8XG4gIEV4Y2x1ZGU8U3R5bGVkSW5wdXRQcm9wcywgVGV4dGFyZWFIVE1MQXR0cmlidXRlczxIVE1MVGV4dEFyZWFFbGVtZW50Pj4sXG4gICdpbnB1dFNpemUnXG4+XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT5cbiAgICAhW1xuICAgICAgJ2FzJyxcbiAgICAgICdlcnJvcicsXG4gICAgICAnZmlsbEF2YWlsYWJsZScsXG4gICAgICAnaGFzTGFiZWwnLFxuICAgICAgJ2lzUGxhY2Vob2xkZXJWaXNpYmxlJyxcbiAgICAgICdtdWx0aWxpbmUnLFxuICAgICAgJ3Jlc2l6YWJsZScsXG4gICAgICAnaW5wdXRTaXplJyxcbiAgICAgICdwYWRkaW5nUmlnaHRGYWN0b3InLFxuICAgICAgJ3JpZ2h0Q29tcG9uZW50TGVuZ3RoJyxcbiAgICAgICd1bml0JyxcbiAgICBdLmluY2x1ZGVzKHByb3ApLFxufSk8U3R5bGVkSW5wdXRQcm9wcz5gXG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSxcbiAgICBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5iYWNrZ3JvdW5kfTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC5ib3JkZXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lOiB7IHJhZGlpIH0gfSkgPT4gcmFkaWkuZGVmYXVsdH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5uZXV0cmFsLnRleHR9O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIHBhZGRpbmctdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMubmV1dHJhbC50ZXh0V2Vha307XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PiBjb2xvcnMucHJpbWFyeS5ib3JkZXJIb3Zlcn07XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lOiB7IHNoYWRvd3MgfSB9KSA9PiBzaGFkb3dzLmZvY3VzUHJpbWFyeX07XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+IGNvbG9ycy5wcmltYXJ5LmJvcmRlckhvdmVyfTtcbiAgfVxuXG4gICR7KHsgaXNQbGFjZWhvbGRlclZpc2libGUgfSkgPT5cbiAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgIGAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1gfVxuXG4gICR7KHsgZGlzYWJsZWQsIHRoZW1lOiB7IGNvbG9ycyB9IH0pID0+XG4gICAgZGlzYWJsZWQgJiZcbiAgICBgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHREaXNhYmxlZH07YH1cblxuICAkeyh7IHJlYWRPbmx5LCB0aGVtZTogeyBjb2xvcnMgfSB9KSA9PlxuICAgIHJlYWRPbmx5ICYmXG4gICAgYGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYmFja2dyb3VuZERpc2FibGVkfTtcbiAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLm5ldXRyYWwuYm9yZGVyRGlzYWJsZWR9O1xuICAgIGNvbG9yOiAke2NvbG9ycy5uZXV0cmFsLnRleHR9O2B9XG5cbiAgJHsoeyBpbnB1dFNpemUgfSkgPT4gaW5wdXRTaXplc1tpbnB1dFNpemVdPy5kZWZhdWx0fVxuXG4gICR7KHsgaW5wdXRTaXplLCBoYXNMYWJlbCB9KSA9PlxuICAgICEhaW5wdXRTaXplICYmICFoYXNMYWJlbCAmJiBpbnB1dFNpemVzW2lucHV0U2l6ZV0/LmZ1bGx9XG5cbiAgJHsoeyBlcnJvciwgdGhlbWU6IHsgY29sb3JzLCBzaGFkb3dzIH0gfSkgPT5cbiAgICBlcnJvciAmJlxuICAgIGBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJ9O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHtjb2xvcnMuZGFuZ2VyLmJvcmRlckhvdmVyfTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICR7c2hhZG93cy5mb2N1c0Rhbmdlcn07XG4gICAgICBib3JkZXItY29sb3I6ICR7Y29sb3JzLmRhbmdlci5ib3JkZXJIb3Zlcn07XG4gICAgfWB9XG5cbiAgICAkeyh7IG11bHRpbGluZSwgcmVzaXphYmxlLCBmaWxsQXZhaWxhYmxlIH0pID0+XG4gICAgbXVsdGlsaW5lICYmXG4gICAgYFxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGhlaWdodDogJHtmaWxsQXZhaWxhYmxlID8gJzEwMCUnIDogJ2luaXRpYWwnfTtcbiAgICByZXNpemU6ICR7cmVzaXphYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICd2ZXJ0aWNhbCd9O1xuICBgfVxuXG4gICR7KHsgbXVsdGlsaW5lLCBoYXNMYWJlbCwgdGhlbWUgfSkgPT5cbiAgICBtdWx0aWxpbmUgJiZcbiAgICAhaGFzTGFiZWwgJiZcbiAgICBgXG4gICAgcGFkZGluZy10b3A6ICR7dGhlbWUuc3BhY2VbJzEnXX07XG4gIGB9XG5cbiAgJHsoeyBwYWRkaW5nUmlnaHRGYWN0b3IsIHJpZ2h0Q29tcG9uZW50TGVuZ3RoLCB1bml0LCB0aGVtZSB9KSA9PlxuICAgIHBhZGRpbmdSaWdodEZhY3RvciA+IDAgJiZcbiAgICBgXG4gICAgcGFkZGluZy1yaWdodDogY2FsYygke1xuICAgICAgdW5pdCA/IGAke3VuaXQubGVuZ3RofSAqICR7dGhlbWUuc3BhY2VbJzEnXX0gKyBgIDogJydcbiAgICB9JHtcbiAgICAgIHBhZGRpbmdSaWdodEZhY3RvciArXG4gICAgICAodW5pdCA/IHJpZ2h0Q29tcG9uZW50TGVuZ3RoIC0gMSA6IHJpZ2h0Q29tcG9uZW50TGVuZ3RoKVxuICAgIH0gKiAke3RoZW1lLnNwYWNlWyc0J119KTtcbiAgYH1cbmBcblxuY29uc3QgUmlnaHRDb21wb25lbnQgPSBzdHlsZWQoU3RhY2spYFxuICBtaW4td2lkdGg6IDI0cHg7XG5gXG5cbnR5cGUgVGV4dElucHV0UHJvcHMgPSB7XG4gICdkYXRhLXRlc3RpZCc/OiBzdHJpbmdcbiAgYXJpYUNvbnRyb2xzPzogc3RyaW5nXG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZ1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICBjb2xzPzogbnVtYmVyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZ1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgZWRpdD86IGJvb2xlYW5cbiAgZXJyb3I/OiBzdHJpbmdcbiAgZmlsbEF2YWlsYWJsZT86IGJvb2xlYW5cbiAgZ2VuZXJhdGVkPzogYm9vbGVhblxuICBoZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXJcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWw/OiBzdHJpbmdcbiAgbXVsdGlsaW5lPzogYm9vbGVhblxuICBuYW1lPzogc3RyaW5nXG4gIG5vdGljZT86IHN0cmluZ1xuICBub1RvcExhYmVsPzogYm9vbGVhblxuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25DaGFuZ2U/OiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIG9uS2V5VXA/OiBLZXlib2FyZEV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD5cbiAgb25LZXlEb3duPzogS2V5Ym9hcmRFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIHJhbmRvbT86IHN0cmluZ1xuICByZWFkT25seT86IGJvb2xlYW5cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIHJlc2l6YWJsZT86IGJvb2xlYW5cbiAgcm93cz86IG51bWJlclxuICBzaXplPzogVGV4dElucHV0U2l6ZXNcbiAgdGFiSW5kZXg/OiBudW1iZXJcbiAgdHlwZT86IHN0cmluZ1xuICB1bml0Pzogc3RyaW5nXG4gIHZhbGlkPzogYm9vbGVhblxuICB2YWx1ZT86IHN0cmluZyB8IG51bWJlclxuICB3cmFwPzogc3RyaW5nXG4gIGlucHV0UHJvcHM/OiBJbnB1dFByb3BzXG4gIG1heD86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21heCddXG4gIG1pbj86IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD5bJ21pbiddXG59ICYgKFxuICB8IE9taXQ8SW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiwgJ29uQ2hhbmdlJz5cbiAgfCBPbWl0PFRleHRhcmVhSFRNTEF0dHJpYnV0ZXM8SFRNTFRleHRBcmVhRWxlbWVudD4sICdvbkNoYW5nZSc+XG4pXG5cbmNvbnN0IFVuaXRMYWJlbCA9IHN0eWxlZChUZXh0KWBcbiAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfSAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbmBcblxuLyoqXG4gKiBUZXh0SW5wdXQgY29tcG9uZW50IGFsbG93cyB1c2VycyB0byBpbnB1dCB0ZXh0LCB3aXRoIG9wdGlvbnMgZm9yIGN1c3RvbWl6YXRpb24gYW5kIHZhbGlkYXRpb24uXG4gKiBJdCBzdXBwb3J0cyB2YXJpb3VzIGlucHV0IHR5cGVzIGFuZCBzaG91bGQgYmUgYXBwcm9wcmlhdGVseSBzaXplZCB3aXRoIGNsZWFyIGxhYmVsaW5nLlxuICovXG5leHBvcnQgY29uc3QgVGV4dElucHV0ID0gZm9yd2FyZFJlZjxcbiAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBudWxsLFxuICBUZXh0SW5wdXRQcm9wc1xuPihcbiAgKFxuICAgIHtcbiAgICAgICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gICAgICBhcmlhQ29udHJvbHMsXG4gICAgICBhdXRvQ29tcGxldGUgPSAnb24nLFxuICAgICAgYXV0b0ZvY3VzLFxuICAgICAgY2xhc3NOYW1lLFxuICAgICAgY29scyxcbiAgICAgIGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgZWRpdDogZm9yY2VFZGl0LFxuICAgICAgZXJyb3IsXG4gICAgICBmaWxsQXZhaWxhYmxlLFxuICAgICAgZ2VuZXJhdGVkLFxuICAgICAgaGVpZ2h0LFxuICAgICAgaWQsXG4gICAgICBsYWJlbCxcbiAgICAgIG11bHRpbGluZSxcbiAgICAgIG5hbWUsXG4gICAgICBub3RpY2UsXG4gICAgICBub1RvcExhYmVsID0gZmFsc2UsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbktleVVwLFxuICAgICAgb25LZXlEb3duLFxuICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICByYW5kb20sXG4gICAgICByZWFkT25seSxcbiAgICAgIHJlcXVpcmVkLFxuICAgICAgcmVzaXphYmxlLFxuICAgICAgcm93cyxcbiAgICAgIHNpemUgPSAnbWVkaXVtJyxcbiAgICAgIHRhYkluZGV4LFxuICAgICAgdHlwZSA9ICd0ZXh0JyxcbiAgICAgIHVuaXQsXG4gICAgICB2YWxpZCxcbiAgICAgIHZhbHVlLFxuICAgICAgd3JhcCxcbiAgICAgIGlucHV0UHJvcHMsXG4gICAgICBtaW4sXG4gICAgICBtYXgsXG4gICAgfSxcbiAgICByZWYsXG4gICkgPT4ge1xuICAgIGNvbnN0IGNvbnRyb2xSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IFt2aXNpdGVkLCBzZXRWaXNpdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICAgIGNvbnN0IFtwYXNzd29yZFZpc2libGUsIHNldFBhc3N3b3JkVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgICBjb25zdCB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAgICgpID0+IHNldFBhc3N3b3JkVmlzaWJsZSh4ID0+ICF4KSxcbiAgICAgIFtdLFxuICAgIClcblxuICAgIC8vIEZvcndhcmQgcmVmIHRvIHBhcmVudCByZWZcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlPHVua25vd24sIHVua25vd24+KHJlZiwgKCkgPT4gY29udHJvbFJlZiwgW10pXG5cbiAgICAvLyBGb2N1cyB3aGVuIHBhc3N3b3JkIGlzIHZpc2libGVcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHBhc3N3b3JkVmlzaWJsZSkge1xuICAgICAgICBjb250cm9sUmVmPy5jdXJyZW50Py5mb2N1cygpXG4gICAgICB9XG4gICAgfSwgW3Bhc3N3b3JkVmlzaWJsZV0pXG5cbiAgICBjb25zdCBoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSxcbiAgICAgIFt0b2dnbGVQYXNzd29yZFZpc2liaWxpdHldLFxuICAgIClcblxuICAgIGNvbnN0IHJhbmRvbWl6ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKCkgPT4gb25DaGFuZ2U/LihyYW5kb21OYW1lKHJhbmRvbSkpLFxuICAgICAgW29uQ2hhbmdlLCByYW5kb21dLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrUmFuZG9taXplID0gdXNlQ2FsbGJhY2soKCkgPT4gcmFuZG9taXplKCksIFtyYW5kb21pemVdKVxuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyPFxuICAgICAgSFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnRcbiAgICA+ID0gdXNlQ2FsbGJhY2soXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmICghdmlzaXRlZCAmJiAhcmVhZE9ubHkpIHtcbiAgICAgICAgICBzZXRWaXNpdGVkKHRydWUpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25Gb2N1cykge1xuICAgICAgICAgIG9uRm9jdXMoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdmlzaXRlZCwgcmVhZE9ubHksIG9uRm9jdXNdLFxuICAgIClcblxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4pID0+XG4gICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQudGFyZ2V0LnZhbHVlKSxcbiAgICAgIFtvbkNoYW5nZV0sXG4gICAgKVxuXG4gICAgY29uc3QgaXNQYXNzVG9nZ2xlYWJsZSA9IHR5cGUgPT09ICd0b2dnbGVhYmxlLXBhc3N3b3JkJ1xuICAgIGNvbnN0IGhhc0xhYmVsID0gISFsYWJlbCAmJiAhbm9Ub3BMYWJlbCAmJiBzaXplID09PSAnbWVkaXVtJ1xuICAgIGNvbnN0IGVkaXQgPVxuICAgICAgaGFzTGFiZWwgJiYgKGZvcmNlRWRpdCB8fCB2aXNpdGVkIHx8IHZhbHVlIHx8IGVycm9yIHx8IGdlbmVyYXRlZClcblxuICAgIGNvbnN0IGlzUGxhY2Vob2xkZXJWaXNpYmxlID0gIWhhc0xhYmVsIHx8ICEhZWRpdFxuICAgIGNvbnN0IGhhc1JpZ2h0RWxlbWVudCA9ICEhKFxuICAgICAgdmFsaWQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgaXNQYXNzVG9nZ2xlYWJsZSB8fFxuICAgICAgcmFuZG9tIHx8XG4gICAgICB1bml0XG4gICAgKVxuXG4gICAgY29uc3QgZ2V0VHlwZSA9ICgpID0+IHtcbiAgICAgIGlmIChpc1Bhc3NUb2dnbGVhYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXNzd29yZFZpc2libGUgfHwgZ2VuZXJhdGVkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbXVsdGlsaW5lID8gdW5kZWZpbmVkIDogdHlwZVxuICAgIH1cblxuICAgIGNvbnN0IGlucHV0U2l6ZSA9IHNpemVcblxuICAgIGNvbnN0IHJpZ2h0Q29tcG9uZW50c0FycmF5ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCByaWdodENvbXBvbmVudHMgPSBbXVxuXG4gICAgICBpZiAoaXNQYXNzVG9nZ2xlYWJsZSAmJiAhZ2VuZXJhdGVkKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtcbiAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LXZpc2liaWxpdHktYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD17cGFzc3dvcmRWaXNpYmxlID8gJ2hpZGUnIDogJ3Nob3cnfVxuICAgICAgICAgICAga2V5PVwicGFzc3dvcmQtdmlzaWJsZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVQYXNzVmlzaWJpbGl0eUNsaWNrfVxuICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgaWNvbj17cGFzc3dvcmRWaXNpYmxlID8gJ2V5ZS1vZmYnIDogJ2V5ZSd9XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAocmFuZG9tKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGtleT1cInJhbmRvbVwiXG4gICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgIGRhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1yYW5kb21pemUtYnV0dG9uYCA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInJhbmRvbWl6ZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja1JhbmRvbWl6ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIGljb249XCJhdXRvLWZpeFwiXG4gICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHZhbGlkID09PSB0cnVlKSB7XG4gICAgICAgIHJpZ2h0Q29tcG9uZW50cy5wdXNoKFxuICAgICAgICAgIDxJY29uXG4gICAgICAgICAgICBrZXk9XCJ2YWxpZFwiXG4gICAgICAgICAgICBuYW1lPXshdmFsaWQgPyAnY2xvc2UnIDogJ2NoZWNrJ31cbiAgICAgICAgICAgIGNvbG9yPXshdmFsaWQgPyAnZGFuZ2VyJyA6ICdzdWNjZXNzJ31cbiAgICAgICAgICAgIHNpemU9ezIwfVxuICAgICAgICAgIC8+LFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICByaWdodENvbXBvbmVudHMucHVzaChcbiAgICAgICAgICA8VW5pdExhYmVsIGtleT1cInVuaXRcIiB2YXJpYW50PVwiYm9keVNtYWxsXCIgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIj5cbiAgICAgICAgICAgIHt1bml0fVxuICAgICAgICAgIDwvVW5pdExhYmVsPixcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmlnaHRDb21wb25lbnRzXG4gICAgfSwgW1xuICAgICAgZGlzYWJsZWQsXG4gICAgICBnZW5lcmF0ZWQsXG4gICAgICBoYW5kbGVDbGlja1JhbmRvbWl6ZSxcbiAgICAgIGhhbmRsZVBhc3NWaXNpYmlsaXR5Q2xpY2ssXG4gICAgICBpc1Bhc3NUb2dnbGVhYmxlLFxuICAgICAgcGFzc3dvcmRWaXNpYmxlLFxuICAgICAgcmFuZG9tLFxuICAgICAgdW5pdCxcbiAgICAgIHZhbGlkLFxuICAgICAgZGF0YVRlc3RJZCxcbiAgICBdKVxuXG4gICAgY29uc3Qgc2hvd1NlcGFyYXRvciA9IChyZXF1aXJlZCAmJiBoYXNSaWdodEVsZW1lbnQpIHx8IHVuaXRcbiAgICBjb25zdCBwYWRkaW5nUmlnaHRGYWN0b3IgPSAocmVxdWlyZWQgPyAxIDogMCkgKyAoc2hvd1NlcGFyYXRvciA/IDAuNSA6IDApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIDxTdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgICA8U3R5bGVkSW5wdXRcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9e2FyaWFDb250cm9sc31cbiAgICAgICAgICAgIGFyaWEtbGFiZWw9e2xhYmVsIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17aGFzTGFiZWwgPyBhcmlhQ29udHJvbHMgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBhcz17bXVsdGlsaW5lID8gJ3RleHRhcmVhJyA6ICdpbnB1dCd9XG4gICAgICAgICAgICBhdXRvQ29tcGxldGU9e2F1dG9Db21wbGV0ZX1cbiAgICAgICAgICAgIGF1dG9Gb2N1cz17YXV0b0ZvY3VzfVxuICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICBlcnJvcj17ISFlcnJvcn1cbiAgICAgICAgICAgIGZpbGxBdmFpbGFibGU9e2ZpbGxBdmFpbGFibGV9XG4gICAgICAgICAgICBoYXNMYWJlbD17aGFzTGFiZWx9XG4gICAgICAgICAgICBwYWRkaW5nUmlnaHRGYWN0b3I9e3BhZGRpbmdSaWdodEZhY3Rvcn1cbiAgICAgICAgICAgIHJpZ2h0Q29tcG9uZW50TGVuZ3RoPXtyaWdodENvbXBvbmVudHNBcnJheS5sZW5ndGh9XG4gICAgICAgICAgICB1bml0PXt1bml0fVxuICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgaW5wdXRTaXplPXtpbnB1dFNpemV9XG4gICAgICAgICAgICBpc1BsYWNlaG9sZGVyVmlzaWJsZT17aXNQbGFjZWhvbGRlclZpc2libGV9XG4gICAgICAgICAgICBtdWx0aWxpbmU9e211bHRpbGluZX1cbiAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVGb2N1c31cbiAgICAgICAgICAgIG9uS2V5VXA9e29uS2V5VXB9XG4gICAgICAgICAgICBvbktleURvd249e29uS2V5RG93bn1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgIHJlZj17Y29udHJvbFJlZn1cbiAgICAgICAgICAgIHJlc2l6YWJsZT17cmVzaXphYmxlfVxuICAgICAgICAgICAgcm93cz17cm93c31cbiAgICAgICAgICAgIHN0eWxlPXt7IGhlaWdodCB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgdHlwZT17Z2V0VHlwZSgpfVxuICAgICAgICAgICAgdmFsdWU9e3ZhbHVlID09PSBudWxsID8gJycgOiB2YWx1ZX1cbiAgICAgICAgICAgIHdyYXA9e3dyYXB9XG4gICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgIG1heD17bWF4fVxuICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7aGFzTGFiZWwgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZExhYmVsXG4gICAgICAgICAgICAgIGVkaXQ9eyEhZWRpdH1cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgIGVycm9yPXshIWVycm9yfVxuICAgICAgICAgICAgICBpZD17YXJpYUNvbnRyb2xzfVxuICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgPC9TdHlsZWRMYWJlbD5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2hhc1JpZ2h0RWxlbWVudCB8fCByZXF1aXJlZCA/IChcbiAgICAgICAgICAgIDxTdHlsZWRSaWdodEVsZW1lbnRcbiAgICAgICAgICAgICAgZWRpdD17ISFlZGl0fVxuICAgICAgICAgICAgICB0b3VjaGFibGU9e2lzUGFzc1RvZ2dsZWFibGUgfHwgISFyYW5kb219XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtyZXF1aXJlZCA/IChcbiAgICAgICAgICAgICAgICA8SWNvbiBuYW1lPVwiYXN0ZXJpc2tcIiBjb2xvcj1cImRhbmdlclwiIHNpemU9ezEwfSAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge3Nob3dTZXBhcmF0b3IgPyA8U3R5bGVkU2VwYXJhdG9yIGRpcmVjdGlvbj1cInZlcnRpY2FsXCIgLz4gOiBudWxsfVxuICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXkubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICA8UmlnaHRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50PVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zPVwiY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cmlnaHRDb21wb25lbnRzQXJyYXl9XG4gICAgICAgICAgICAgICAgPC9SaWdodENvbXBvbmVudD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0eWxlZFJpZ2h0RWxlbWVudD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdHlsZWRSZWxhdGl2ZURpdj5cbiAgICAgICAgPEV4cGFuZGFibGUgb3BlbmVkPXshIWVycm9yfT5cbiAgICAgICAgICA8U3R5bGVkRXJyb3I+e2Vycm9yfTwvU3R5bGVkRXJyb3I+XG4gICAgICAgIDwvRXhwYW5kYWJsZT5cbiAgICAgICAge25vdGljZSA/IDxTdHlsZWROb3RpY2U+e25vdGljZX08L1N0eWxlZE5vdGljZT4gOiBudWxsfVxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
280
+ const TextInput = React.forwardRef(({
281
+ "data-testid": dataTestId,
282
+ ariaControls,
283
+ autoComplete = "on",
284
+ autoFocus,
285
+ className,
286
+ cols,
287
+ defaultValue,
288
+ disabled,
289
+ edit: forceEdit,
290
+ error,
291
+ fillAvailable,
292
+ generated,
293
+ height,
294
+ id,
295
+ label,
296
+ multiline,
297
+ name,
298
+ notice,
299
+ noTopLabel = false,
300
+ onBlur,
301
+ onChange,
302
+ onFocus,
303
+ onKeyUp,
304
+ onKeyDown,
305
+ placeholder,
306
+ random,
307
+ readOnly,
308
+ required,
309
+ resizable,
310
+ rows,
311
+ size = "medium",
312
+ tabIndex,
313
+ type = "text",
314
+ unit,
315
+ valid,
316
+ value,
317
+ wrap,
318
+ inputProps,
319
+ min,
320
+ max
321
+ }, ref) => {
322
+ const controlRef = React.useRef(null);
323
+ const [visited, setVisited] = React.useState(false);
324
+ const [passwordVisible, setPasswordVisible] = React.useState(false);
325
+ const togglePasswordVisibility = React.useCallback(() => setPasswordVisible((x) => !x), []);
326
+ React.useImperativeHandle(ref, () => controlRef, []);
327
+ React.useEffect(() => {
328
+ if (passwordVisible) {
329
+ controlRef?.current?.focus();
330
+ }
331
+ }, [passwordVisible]);
332
+ const handlePassVisibilityClick = React.useCallback(() => togglePasswordVisibility(), [togglePasswordVisibility]);
333
+ const randomize = React.useCallback(() => onChange?.(randomName__default.default(random)), [onChange, random]);
334
+ const handleClickRandomize = React.useCallback(() => randomize(), [randomize]);
335
+ const handleFocus = React.useCallback((event) => {
336
+ if (!visited && !readOnly) {
337
+ setVisited(true);
338
+ }
339
+ if (onFocus) {
340
+ onFocus(event);
341
+ }
342
+ }, [visited, readOnly, onFocus]);
343
+ const handleChange = React.useCallback((event) => onChange?.(event.target.value), [onChange]);
344
+ const isPassToggleable = type === "toggleable-password";
345
+ const hasLabel = !!label && !noTopLabel && size === "medium";
346
+ const edit = hasLabel && (forceEdit || visited || value || error || generated);
347
+ const isPlaceholderVisible = !hasLabel || !!edit;
348
+ const hasRightElement = !!(valid !== void 0 || isPassToggleable || random || unit);
349
+ const getType = () => {
350
+ if (isPassToggleable) {
351
+ return passwordVisible || generated ? "text" : "password";
352
+ }
353
+ return multiline ? void 0 : type;
354
+ };
355
+ const inputSize = size;
356
+ const rightComponentsArray = React.useMemo(() => {
357
+ const rightComponents = [];
358
+ if (isPassToggleable && !generated) {
359
+ rightComponents.push(/* @__PURE__ */ jsxRuntime.jsx(index$4.Button, { "data-testid": dataTestId ? `${dataTestId}-visibility-button` : void 0, "aria-label": passwordVisible ? "hide" : "show", onClick: handlePassVisibilityClick, variant: "ghost", sentiment: "neutral", icon: passwordVisible ? "eye-off" : "eye", size: "small" }, "password-visible"));
360
+ }
361
+ if (random) {
362
+ rightComponents.push(/* @__PURE__ */ jsxRuntime.jsx(index$4.Button, { "data-testid": dataTestId ? `${dataTestId}-randomize-button` : void 0, "aria-label": "randomize", onClick: handleClickRandomize, disabled, icon: "auto-fix", variant: "ghost", sentiment: "neutral", size: "small" }, "random"));
363
+ }
364
+ if (valid === false || valid === true) {
365
+ rightComponents.push(/* @__PURE__ */ jsxRuntime.jsx(icons.Icon, { name: !valid ? "close" : "check", color: !valid ? "danger" : "success", size: 20 }, "valid"));
366
+ }
367
+ if (unit) {
368
+ rightComponents.push(/* @__PURE__ */ jsxRuntime.jsx(UnitLabel, { variant: "bodySmall", as: "p", prominence: "weak", children: unit }, "unit"));
369
+ }
370
+ return rightComponents;
371
+ }, [disabled, generated, handleClickRandomize, handlePassVisibilityClick, isPassToggleable, passwordVisible, random, unit, valid, dataTestId]);
372
+ const showSeparator = required && hasRightElement || unit;
373
+ const paddingRightFactor = (required ? 1 : 0) + (showSeparator ? 0.5 : 0);
374
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className, children: [
375
+ /* @__PURE__ */ jsxRuntime.jsxs(StyledRelativeDiv, { children: [
376
+ /* @__PURE__ */ jsxRuntime.jsx(StyledInput, { "aria-controls": ariaControls, "aria-label": label || void 0, "aria-labelledby": hasLabel ? ariaControls : void 0, as: multiline ? "textarea" : "input", autoComplete, autoFocus, cols, "data-testid": dataTestId, defaultValue, disabled, error: !!error, fillAvailable, hasLabel, paddingRightFactor, rightComponentLength: rightComponentsArray.length, unit, id, inputSize, isPlaceholderVisible, multiline, name, onBlur, onChange: handleChange, onFocus: handleFocus, onKeyUp, onKeyDown, placeholder, readOnly, ref: controlRef, resizable, rows, style: {
377
+ height
378
+ }, tabIndex, type: getType(), value: value === null ? "" : value, wrap, min, max, required, ...inputProps }),
379
+ hasLabel && /* @__PURE__ */ jsxRuntime.jsx(StyledLabel, { edit: !!edit, disabled, readOnly, error: !!error, id: ariaControls, htmlFor: id, "aria-live": "assertive", children: label }),
380
+ hasRightElement || required ? /* @__PURE__ */ jsxRuntime.jsxs(StyledRightElement, { edit: !!edit, touchable: isPassToggleable || !!random, children: [
381
+ required ? /* @__PURE__ */ jsxRuntime.jsx(icons.Icon, { name: "asterisk", color: "danger", size: 10 }) : null,
382
+ showSeparator ? /* @__PURE__ */ jsxRuntime.jsx(StyledSeparator, { direction: "vertical" }) : null,
383
+ rightComponentsArray.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(RightComponent, { justifyContent: "center", direction: "row", alignItems: "center", children: rightComponentsArray }) : null
384
+ ] }) : null
385
+ ] }),
386
+ /* @__PURE__ */ jsxRuntime.jsx(index$5.Expandable, { opened: !!error, children: /* @__PURE__ */ jsxRuntime.jsx(StyledError, { children: error }) }),
387
+ notice ? /* @__PURE__ */ jsxRuntime.jsx(StyledNotice, { children: notice }) : null
388
+ ] });
389
+ });
390
+ exports.TextInput = TextInput;