@ultraviolet/plus 3.0.0-beta.9 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (223) hide show
  1. package/dist/components/CodeEditor/CodeEditor.d.ts +3 -2
  2. package/dist/components/CodeEditor/CodeEditor.js +44 -13
  3. package/dist/components/ContentCard/Skeleton.d.ts +1 -1
  4. package/dist/components/ContentCard/Skeleton.js +13 -8
  5. package/dist/components/ContentCard/index.d.ts +2 -1
  6. package/dist/components/ContentCard/index.js +131 -50
  7. package/dist/components/ContentCard/styles.css.js +0 -1
  8. package/dist/components/ContentCardGroup/Card.d.ts +2 -1
  9. package/dist/components/ContentCardGroup/Card.js +65 -86
  10. package/dist/components/ContentCardGroup/SkeletonCard.d.ts +1 -1
  11. package/dist/components/ContentCardGroup/SkeletonCard.js +4 -22
  12. package/dist/components/ContentCardGroup/index.d.ts +3 -1
  13. package/dist/components/ContentCardGroup/index.js +12 -18
  14. package/dist/components/ContentCardGroup/styles.css.d.ts +7 -0
  15. package/dist/components/ContentCardGroup/styles.css.js +18 -0
  16. package/dist/components/Conversation/index.d.ts +25 -17
  17. package/dist/components/Conversation/index.js +37 -103
  18. package/dist/components/Conversation/styles.css.d.ts +7 -0
  19. package/dist/components/Conversation/styles.css.js +17 -0
  20. package/dist/components/CustomerSatisfaction/index.d.ts +3 -1
  21. package/dist/components/CustomerSatisfaction/index.js +70 -96
  22. package/dist/components/CustomerSatisfaction/styles.css.d.ts +17 -0
  23. package/dist/components/CustomerSatisfaction/styles.css.js +6 -0
  24. package/dist/components/EstimateCost/Components/CustomUnitInput.d.ts +1 -1
  25. package/dist/components/EstimateCost/Components/CustomUnitInput.js +47 -27
  26. package/dist/components/EstimateCost/Components/Item.d.ts +3 -2
  27. package/dist/components/EstimateCost/Components/Item.js +308 -288
  28. package/dist/components/EstimateCost/Components/LineThrough.d.ts +3 -5
  29. package/dist/components/EstimateCost/Components/LineThrough.js +12 -12
  30. package/dist/components/EstimateCost/Components/NumberInput.d.ts +1 -1
  31. package/dist/components/EstimateCost/Components/NumberInput.js +18 -10
  32. package/dist/components/EstimateCost/Components/Region.d.ts +2 -2
  33. package/dist/components/EstimateCost/Components/Region.js +44 -33
  34. package/dist/components/EstimateCost/Components/Regular.d.ts +3 -2
  35. package/dist/components/EstimateCost/Components/Regular.js +21 -29
  36. package/dist/components/EstimateCost/Components/Strong.d.ts +3 -10
  37. package/dist/components/EstimateCost/Components/Strong.js +13 -24
  38. package/dist/components/EstimateCost/Components/Unit.d.ts +3 -1
  39. package/dist/components/EstimateCost/Components/Unit.js +23 -31
  40. package/dist/components/EstimateCost/Components/Zone.d.ts +3 -1
  41. package/dist/components/EstimateCost/Components/Zone.js +42 -32
  42. package/dist/components/EstimateCost/Components/components.css.d.ts +77 -0
  43. package/dist/components/EstimateCost/Components/components.css.js +124 -0
  44. package/dist/components/EstimateCost/EstimateCost.d.ts +29 -29
  45. package/dist/components/EstimateCost/EstimateCost.js +74 -25
  46. package/dist/components/EstimateCost/EstimateCostContent.d.ts +1 -1
  47. package/dist/components/EstimateCost/EstimateCostContent.js +270 -174
  48. package/dist/components/EstimateCost/EstimateCostProvider.d.ts +1 -1
  49. package/dist/components/EstimateCost/EstimateCostProvider.js +24 -21
  50. package/dist/components/EstimateCost/OverlayComponent.d.ts +1 -1
  51. package/dist/components/EstimateCost/OverlayComponent.js +57 -81
  52. package/dist/components/EstimateCost/OverlayContext.d.ts +1 -1
  53. package/dist/components/EstimateCost/OverlayContext.js +2 -4
  54. package/dist/components/EstimateCost/constants.js +0 -4
  55. package/dist/components/EstimateCost/styles.css.d.ts +76 -0
  56. package/dist/components/EstimateCost/styles.css.js +50 -0
  57. package/dist/components/EstimateCost/types.d.ts +2 -1
  58. package/dist/components/FAQ/index.d.ts +3 -1
  59. package/dist/components/FAQ/index.js +4 -3
  60. package/dist/components/InfoTable/InfoTable.d.ts +9 -6
  61. package/dist/components/InfoTable/InfoTable.js +14 -18
  62. package/dist/components/InfoTable/components/Cell.d.ts +3 -6
  63. package/dist/components/InfoTable/components/Cell.js +28 -34
  64. package/dist/components/InfoTable/components/Row.d.ts +3 -14
  65. package/dist/components/InfoTable/components/Row.js +25 -18
  66. package/dist/components/InfoTable/context.d.ts +3 -0
  67. package/dist/components/InfoTable/context.js +5 -0
  68. package/dist/components/InfoTable/styles.css.d.ts +6 -0
  69. package/dist/components/InfoTable/styles.css.js +15 -0
  70. package/dist/components/Navigation/Footer.d.ts +1 -1
  71. package/dist/components/Navigation/Footer.js +35 -33
  72. package/dist/components/Navigation/Header.d.ts +1 -1
  73. package/dist/components/Navigation/Header.js +13 -26
  74. package/dist/components/Navigation/Navigation.d.ts +11 -8
  75. package/dist/components/Navigation/Navigation.js +2 -5
  76. package/dist/components/Navigation/NavigationContent.d.ts +1 -1
  77. package/dist/components/Navigation/NavigationContent.js +60 -71
  78. package/dist/components/Navigation/NavigationProvider.d.ts +1 -1
  79. package/dist/components/Navigation/NavigationProvider.js +108 -70
  80. package/dist/components/Navigation/animations.css.d.ts +6 -0
  81. package/dist/components/Navigation/components/Group.d.ts +3 -2
  82. package/dist/components/Navigation/components/Group.js +21 -43
  83. package/dist/components/Navigation/components/Item.d.ts +3 -2
  84. package/dist/components/Navigation/components/Item.js +552 -405
  85. package/dist/components/Navigation/components/ItemProvider.d.ts +1 -1
  86. package/dist/components/Navigation/components/ItemProvider.js +2 -4
  87. package/dist/components/Navigation/components/PinnedItems.d.ts +3 -2
  88. package/dist/components/Navigation/components/PinnedItems.js +94 -74
  89. package/dist/components/Navigation/components/Separator.d.ts +1 -1
  90. package/dist/components/Navigation/components/Separator.js +3 -11
  91. package/dist/components/Navigation/components/items.css.d.ts +70 -0
  92. package/dist/components/Navigation/components/items.css.js +47 -0
  93. package/dist/components/Navigation/components/styles.css.d.ts +23 -0
  94. package/dist/components/Navigation/components/styles.css.js +17 -0
  95. package/dist/components/Navigation/constants.d.ts +0 -12
  96. package/dist/components/Navigation/constants.js +1 -28
  97. package/dist/components/Navigation/styles.css.d.ts +33 -0
  98. package/dist/components/Navigation/styles.css.js +22 -0
  99. package/dist/components/Navigation/types.d.ts +2 -1
  100. package/dist/components/Navigation/variables.css.d.ts +1 -0
  101. package/dist/components/Navigation/variables.css.js +5 -0
  102. package/dist/components/OfferList/OfferList.d.ts +8 -5
  103. package/dist/components/OfferList/OfferList.js +43 -22
  104. package/dist/components/OfferList/OfferListProvider.d.ts +1 -1
  105. package/dist/components/OfferList/OfferListProvider.js +25 -15
  106. package/dist/components/OfferList/components/Banner.d.ts +1 -1
  107. package/dist/components/OfferList/components/Banner.js +32 -95
  108. package/dist/components/OfferList/components/Cell.d.ts +1 -1
  109. package/dist/components/OfferList/components/Cell.js +16 -37
  110. package/dist/components/OfferList/components/Row.d.ts +4 -2
  111. package/dist/components/OfferList/components/Row.js +141 -125
  112. package/dist/components/OfferList/styles.css.d.ts +42 -0
  113. package/dist/components/OfferList/styles.css.js +38 -0
  114. package/dist/components/OrderSummary/NonScrollableContent.d.ts +1 -1
  115. package/dist/components/OrderSummary/NonScrollableContent.js +70 -34
  116. package/dist/components/OrderSummary/Provider.js +1 -4
  117. package/dist/components/OrderSummary/ScrollableContent.d.ts +1 -1
  118. package/dist/components/OrderSummary/ScrollableContent.js +175 -68
  119. package/dist/components/OrderSummary/constants.js +7 -1
  120. package/dist/components/OrderSummary/helpers.js +39 -21
  121. package/dist/components/OrderSummary/index.d.ts +1 -1
  122. package/dist/components/OrderSummary/index.js +139 -83
  123. package/dist/components/OrderSummary/styles.css.d.ts +8 -0
  124. package/dist/components/OrderSummary/styles.css.js +19 -0
  125. package/dist/components/OrderSummary/types.d.ts +2 -1
  126. package/dist/components/Plans/FeatureHint.d.ts +1 -1
  127. package/dist/components/Plans/FeatureHint.js +27 -25
  128. package/dist/components/Plans/PlanHeader.d.ts +1 -1
  129. package/dist/components/Plans/PlanHeader.js +80 -84
  130. package/dist/components/Plans/index.d.ts +3 -1
  131. package/dist/components/Plans/index.js +150 -109
  132. package/dist/components/Plans/styles.css.d.ts +61 -0
  133. package/dist/components/Plans/styles.css.js +26 -0
  134. package/dist/components/SteppedListCard/Step.d.ts +6 -1
  135. package/dist/components/SteppedListCard/Step.js +44 -32
  136. package/dist/components/SteppedListCard/SteppedListCard.d.ts +9 -5
  137. package/dist/components/SteppedListCard/SteppedListCard.js +70 -45
  138. package/dist/components/SteppedListCard/SteppedListContent.d.ts +4 -3
  139. package/dist/components/SteppedListCard/SteppedListContent.js +20 -51
  140. package/dist/components/SteppedListCard/helper.d.ts +1 -1
  141. package/dist/components/SteppedListCard/helper.js +4 -1
  142. package/dist/components/SteppedListCard/styles.css.d.ts +8 -0
  143. package/dist/components/SteppedListCard/styles.css.js +19 -0
  144. package/dist/plus.css +1 -1
  145. package/package.json +13 -16
  146. package/dist/components/CodeEditor/CodeEditor.cjs +0 -49
  147. package/dist/components/CodeEditor/styles.css.cjs +0 -9
  148. package/dist/components/ContentCard/Skeleton.cjs +0 -23
  149. package/dist/components/ContentCard/index.cjs +0 -61
  150. package/dist/components/ContentCard/styles.css.cjs +0 -28
  151. package/dist/components/ContentCardGroup/Card.cjs +0 -94
  152. package/dist/components/ContentCardGroup/SkeletonCard.cjs +0 -35
  153. package/dist/components/ContentCardGroup/index.cjs +0 -31
  154. package/dist/components/Conversation/index.cjs +0 -127
  155. package/dist/components/CustomerSatisfaction/assets/1-5.svg.cjs +0 -3
  156. package/dist/components/CustomerSatisfaction/assets/1-5NB.svg.cjs +0 -3
  157. package/dist/components/CustomerSatisfaction/assets/2-5.svg.cjs +0 -3
  158. package/dist/components/CustomerSatisfaction/assets/2-5NB.svg.cjs +0 -3
  159. package/dist/components/CustomerSatisfaction/assets/3-5.svg.cjs +0 -3
  160. package/dist/components/CustomerSatisfaction/assets/3-5NB.svg.cjs +0 -3
  161. package/dist/components/CustomerSatisfaction/assets/4-5.svg.cjs +0 -3
  162. package/dist/components/CustomerSatisfaction/assets/4-5NB.svg.cjs +0 -3
  163. package/dist/components/CustomerSatisfaction/assets/5-5.svg.cjs +0 -3
  164. package/dist/components/CustomerSatisfaction/assets/5-5NB.svg.cjs +0 -3
  165. package/dist/components/CustomerSatisfaction/index.cjs +0 -123
  166. package/dist/components/EstimateCost/Components/CustomUnitInput.cjs +0 -34
  167. package/dist/components/EstimateCost/Components/Item.cjs +0 -303
  168. package/dist/components/EstimateCost/Components/LineThrough.cjs +0 -19
  169. package/dist/components/EstimateCost/Components/NumberInput.cjs +0 -31
  170. package/dist/components/EstimateCost/Components/Region.cjs +0 -43
  171. package/dist/components/EstimateCost/Components/Regular.cjs +0 -37
  172. package/dist/components/EstimateCost/Components/Strong.cjs +0 -30
  173. package/dist/components/EstimateCost/Components/Unit.cjs +0 -53
  174. package/dist/components/EstimateCost/Components/Zone.cjs +0 -42
  175. package/dist/components/EstimateCost/EstimateCost.cjs +0 -90
  176. package/dist/components/EstimateCost/EstimateCostContent.cjs +0 -256
  177. package/dist/components/EstimateCost/EstimateCostProvider.cjs +0 -37
  178. package/dist/components/EstimateCost/OverlayComponent.cjs +0 -123
  179. package/dist/components/EstimateCost/OverlayContext.cjs +0 -15
  180. package/dist/components/EstimateCost/componentStyle.cjs +0 -221
  181. package/dist/components/EstimateCost/componentStyle.d.ts +0 -106
  182. package/dist/components/EstimateCost/componentStyle.js +0 -219
  183. package/dist/components/EstimateCost/constants.cjs +0 -32
  184. package/dist/components/EstimateCost/helper.cjs +0 -16
  185. package/dist/components/EstimateCost/locales/en.cjs +0 -23
  186. package/dist/components/FAQ/index.cjs +0 -48
  187. package/dist/components/FAQ/styles.css.cjs +0 -5
  188. package/dist/components/InfoTable/InfoTable.cjs +0 -32
  189. package/dist/components/InfoTable/components/Cell.cjs +0 -44
  190. package/dist/components/InfoTable/components/Row.cjs +0 -26
  191. package/dist/components/Navigation/Footer.cjs +0 -71
  192. package/dist/components/Navigation/Header.cjs +0 -36
  193. package/dist/components/Navigation/Navigation.cjs +0 -18
  194. package/dist/components/Navigation/NavigationContent.cjs +0 -163
  195. package/dist/components/Navigation/NavigationProvider.cjs +0 -129
  196. package/dist/components/Navigation/components/Group.cjs +0 -62
  197. package/dist/components/Navigation/components/Item.cjs +0 -429
  198. package/dist/components/Navigation/components/ItemProvider.cjs +0 -14
  199. package/dist/components/Navigation/components/PinnedItems.cjs +0 -116
  200. package/dist/components/Navigation/components/Separator.cjs +0 -18
  201. package/dist/components/Navigation/constants.cjs +0 -37
  202. package/dist/components/Navigation/locales/en.cjs +0 -11
  203. package/dist/components/OfferList/OfferList.cjs +0 -58
  204. package/dist/components/OfferList/OfferListProvider.cjs +0 -38
  205. package/dist/components/OfferList/components/Banner.cjs +0 -108
  206. package/dist/components/OfferList/components/Cell.cjs +0 -50
  207. package/dist/components/OfferList/components/Row.cjs +0 -192
  208. package/dist/components/OrderSummary/NonScrollableContent.cjs +0 -68
  209. package/dist/components/OrderSummary/Provider.cjs +0 -18
  210. package/dist/components/OrderSummary/ScrollableContent.cjs +0 -109
  211. package/dist/components/OrderSummary/constants.cjs +0 -12
  212. package/dist/components/OrderSummary/helpers.cjs +0 -91
  213. package/dist/components/OrderSummary/index.cjs +0 -135
  214. package/dist/components/OrderSummary/locales/en.cjs +0 -11
  215. package/dist/components/Plans/FeatureHint.cjs +0 -42
  216. package/dist/components/Plans/PlanHeader.cjs +0 -102
  217. package/dist/components/Plans/index.cjs +0 -152
  218. package/dist/components/Plans/locales/en.cjs +0 -7
  219. package/dist/components/SteppedListCard/Step.cjs +0 -51
  220. package/dist/components/SteppedListCard/SteppedListCard.cjs +0 -82
  221. package/dist/components/SteppedListCard/SteppedListContent.cjs +0 -86
  222. package/dist/components/SteppedListCard/helper.cjs +0 -38
  223. package/dist/index.cjs +0 -33
@@ -1,256 +0,0 @@
1
- "use client";
2
- "use strict";
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
- const jsxRuntime = require("@emotion/react/jsx-runtime");
5
- const _styled = require("@emotion/styled/base");
6
- const icons = require("@ultraviolet/icons");
7
- const ui = require("@ultraviolet/ui");
8
- const react = require("react");
9
- const reactIntersectionObserver = require("react-intersection-observer");
10
- const CustomUnitInput = require("./Components/CustomUnitInput.cjs");
11
- const Item = require("./Components/Item.cjs");
12
- const LineThrough = require("./Components/LineThrough.cjs");
13
- const componentStyle = require("./componentStyle.cjs");
14
- const constants = require("./constants.cjs");
15
- const EstimateCostProvider = require("./EstimateCostProvider.cjs");
16
- const helper = require("./helper.cjs");
17
- const en = require("./locales/en.cjs");
18
- const OverlayComponent = require("./OverlayComponent.cjs");
19
- const OverlayContext = require("./OverlayContext.cjs");
20
- const _interopDefaultCompat = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
21
- const _styled__default = /* @__PURE__ */ _interopDefaultCompat(_styled);
22
- function _EMOTION_STRINGIFIED_CSS_ERROR__() {
23
- 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).";
24
- }
25
- const FeesText = /* @__PURE__ */ _styled__default.default(ui.Text, process.env.NODE_ENV === "production" ? {
26
- target: "excc3v74"
27
- } : {
28
- target: "excc3v74",
29
- label: "FeesText"
30
- })("margin-top:", ({
31
- theme
32
- }) => theme.space["3"], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThDNkIiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvcGx1cy9zcmMvY29tcG9uZW50cy9Fc3RpbWF0ZUNvc3QvRXN0aW1hdGVDb3N0Q29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBDYWxjdWxhdG9ySWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEFsZXJ0LCBTdGFjaywgVGV4dCB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlSW5WaWV3IH0gZnJvbSAncmVhY3QtaW50ZXJzZWN0aW9uLW9ic2VydmVyJ1xuaW1wb3J0IHsgQ3VzdG9tVW5pdElucHV0IH0gZnJvbSAnLi9Db21wb25lbnRzL0N1c3RvbVVuaXRJbnB1dCdcbmltcG9ydCB7IEl0ZW0gfSBmcm9tICcuL0NvbXBvbmVudHMvSXRlbSdcbmltcG9ydCB7IExpbmVUaHJvdWdoIH0gZnJvbSAnLi9Db21wb25lbnRzL0xpbmVUaHJvdWdoJ1xuaW1wb3J0IHtcbiAgQmFkZ2VCZXRhLFxuICBDZWxsLFxuICBFbXB0eUNlbGwsXG4gIEVtcHR5VGFibGUsXG4gIFByaWNlQ29sLFxuICBwcmljZUNlbGwsXG4gIFN0eWxlZEZlZXNUYWJsZSxcbiAgU3R5bGVkVGFibGUsXG4gIFRpbWVDZWxsLFxuICBUaXRsZSxcbiAgVG90YWxQcmljZUNlbGwsXG59IGZyb20gJy4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQgeyBtYXhpbXVtRnJhY3Rpb25EaWdpdHMsIG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcgfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB7IHVzZUVzdGltYXRlQ29zdCB9IGZyb20gJy4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4vaGVscGVyJ1xuaW1wb3J0IEVzdGltYXRlQ29zdExvY2FsZXMgZnJvbSAnLi9sb2NhbGVzL2VuJ1xuaW1wb3J0IHsgT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vT3ZlcmxheUNvbXBvbmVudCdcbmltcG9ydCB7IE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgfSBmcm9tICcuL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZUNvc3RQcm9wcyxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBGZWVzVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMyddfTtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIGlzQmV0YT86IGJvb2xlYW5cbn0+YFxuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgJHsoeyBpc0JldGEsIHRoZW1lIH0pID0+XG4gICAgaXNCZXRhID8gYG1hcmdpbi1sZWZ0OiAke3RoZW1lLnNwYWNlWycyJ119O2AgOiBudWxsfVxuYFxuXG5jb25zdCBSaWdodEFsaWduZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkQ2FsY3VsYXRvckljb24gPSBzdHlsZWQoQ2FsY3VsYXRvckljb24pYFxuICBtYXJnaW4tcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IFN0eWxlZFByaWNlQ2VsbCA9IHN0eWxlZChDZWxsLndpdGhDb21wb25lbnQoJ3RoJykpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG4gIHBhZGRpbmc6IDA7XG5gXG5cbmNvbnN0IERFRkFVTFRfVU5JVF9MSVNUOiBVbml0c1tdID0gWydob3VycycsICdkYXlzJywgJ21vbnRocyddXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXNMYXN0RWxlbWVudD86IGJvb2xlYW5cbiAgcHJvZHVjdHNDYWxsYmFjaz86IHtcbiAgICBhZGQ6IChwcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgICByZW1vdmU6IChwcm9kdWN0OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gIH1cbiAgaXRlcmF0aW9uPzogSXRlcmF0aW9uXG4gIGRpc2NvdW50PzogbnVtYmVyXG59XG5cbmNvbnN0IERlc2NyaXB0aW9uQ29tcG9uZW50ID0gbWVtbyhcbiAgKHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBsb2NhbGVzLFxuICB9OiB7XG4gICAgZGVzY3JpcHRpb246IFJlYWN0Tm9kZVxuICAgIGxvY2FsZXM6IFJlY29yZDxrZXlvZiB0eXBlb2YgRXN0aW1hdGVDb3N0TG9jYWxlcywgc3RyaW5nPlxuICB9KSA9PlxuICAgIGRlc2NyaXB0aW9uID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGRlc2NyaXB0aW9uID09PSAnc3RyaW5nJyA/IChcbiAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgIHtkZXNjcmlwdGlvbiB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmRlc2NyaXB0aW9uJ119XG4gICAgICA8L1RleHQ+XG4gICAgKSA6IChcbiAgICAgIGRlc2NyaXB0aW9uXG4gICAgKSxcbilcblxuY29uc3QgVGl0bGVDb21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBsb2NhbGVzOiBSZXF1aXJlZDxDb21wb25lbnRQcm9wczx0eXBlb2YgRXN0aW1hdGVDb3N0Q29udGVudD5bJ2xvY2FsZXMnXT5cbiAgfSkgPT4gKFxuICAgIDxUaXRsZT5cbiAgICAgIDxTdHlsZWRDYWxjdWxhdG9ySWNvbiBzZW50aW1lbnQ9XCJwcmltYXJ5XCIgc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICB7bG9jYWxlcz8uWydlc3RpbWF0ZS5jb3N0LmxhYmVsJ119XG4gICAgPC9UaXRsZT5cbiAgKSxcbilcblxuZXhwb3J0IGNvbnN0IEVzdGltYXRlQ29zdENvbnRlbnQgPSAoe1xuICBkZXNjcmlwdGlvbixcbiAgYWxlcnQsXG4gIGFsZXJ0VGl0bGUsXG4gIGFsZXJ0VmFyaWFudCA9ICd3YXJuaW5nJyxcbiAgZGVmYXVsdFRpbWVVbml0ID0gJ2hvdXJzJyxcbiAgdGltZVVuaXRzID0gREVGQVVMVF9VTklUX0xJU1QsXG4gIGhpZGVPdmVybGF5ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5TGVmdCA9IGZhbHNlLFxuICBkaXNhYmxlT3ZlcmxheVJpZ2h0ID0gZmFsc2UsXG4gIGhpZGVUaW1lVW5pdCA9IGZhbHNlLFxuICBoaWRlVG90YWwgPSBmYWxzZSxcbiAgaGlkZUhvdXJseVByaWNlT25Ub3RhbCA9IGZhbHNlLFxuICBkaXNjb3VudCA9IDAsXG4gIE92ZXJsYXlSaWdodCxcbiAgT3ZlcmxheUxlZnQsXG4gIGlzQmV0YSA9IGZhbHNlLFxuICBjb21taXRtZW50RmVlcyxcbiAgY29tbWl0bWVudEZlZXNDb250ZW50LFxuICBtb250aGx5RmVlcyxcbiAgbW9udGhseUZlZXNMYWJlbCxcbiAgbW9udGhseUZlZXNDb250ZW50LFxuICBvdmVybGF5VW5pdCA9ICdob3VycycsXG4gIGNoaWxkcmVuID0gbnVsbCxcbiAgbG9jYWxlcyA9IEVzdGltYXRlQ29zdExvY2FsZXMsXG4gIG92ZXJsYXlNYXJnaW4sXG4gIG9uVG90YWxQcmljZUNoYW5nZSxcbn06IEVzdGltYXRlQ29zdFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuICBjb25zdCBbcmVmLCBpblZpZXddID0gdXNlSW5WaWV3KClcbiAgY29uc3QgW3Byb2R1Y3RzLCBzZXRQcm9kdWN0c10gPSB1c2VTdGF0ZTxFc3RpbWF0ZVByb2R1Y3RbXT4oW10pIC8vIHByb2R1Y3QgaXMgdXNlZCB0byBzdG9yZSBlYWNoIGl0ZW1zIHdpdGggdGhlaXIgcHJpY2UgYW5kIGFtb3VudFxuICBjb25zdCBbdG90YWxQcmljZSwgc2V0VG90YWxQcmljZV0gPSB1c2VTdGF0ZSh7XG4gICAgaG91cmx5OiAwLFxuICAgIG1heEhvdXJseTogMCxcbiAgICBtYXhPdmVybGF5SG91cmx5OiAwLFxuICAgIG1heFRvdGFsOiAwLFxuICAgIG92ZXJsYXlIb3VybHk6IDAsXG4gICAgdG90YWw6IDAsXG4gIH0pXG4gIGNvbnN0IFtpdGVyYXRpb24sIHNldEl0ZXJhdGlvbl0gPSB1c2VTdGF0ZTxJdGVyYXRpb24+KHtcbiAgICB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJyxcbiAgICB2YWx1ZTogMSxcbiAgfSlcblxuICBjb25zdCBbaXNMb25nRnJhY3Rpb25EaWdpdHMsIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBwcm92aWRlclZhbHVlID0gdXNlTWVtbygoKSA9PiAoeyBpc092ZXJsYXk6IGZhbHNlIH0pLCBbXSlcblxuICBjb25zdCB0b3RhbFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UudG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UudG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UudG90YWxdLFxuICApXG5cbiAgY29uc3QgdG90YWxNYXhWYWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGZvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heFRvdGFsIDwgMCA/IDAgOiB0b3RhbFByaWNlLm1heFRvdGFsLCB7XG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmdbaXRlcmF0aW9uLnVuaXRdXG4gICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uLnVuaXRdLFxuICAgICAgfSksXG4gICAgW2Zvcm1hdE51bWJlciwgaXNMb25nRnJhY3Rpb25EaWdpdHMsIGl0ZXJhdGlvbi51bml0LCB0b3RhbFByaWNlLm1heFRvdGFsXSxcbiAgKVxuXG4gIGNvbnN0IHByb2R1Y3RzQ2FsbGJhY2sgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBhZGQ6IChuZXdQcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHtcbiAgICAgICAgc2V0UHJvZHVjdHModG90YWwgPT4ge1xuICAgICAgICAgIGlmICh0b3RhbC5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5pZCA9PT0gbmV3UHJvZHVjdC5pZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0b3RhbC5tYXAocHJvZHVjdCA9PlxuICAgICAgICAgICAgICBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkID8gbmV3UHJvZHVjdCA6IHByb2R1Y3QsXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFsuLi50b3RhbCwgbmV3UHJvZHVjdF1cbiAgICAgICAgfSlcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogKHsgaWQgfTogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB0b3RhbC5maWx0ZXIocHJvZHVjdCA9PiBwcm9kdWN0LmlkICE9PSBpZCkpXG4gICAgICB9LFxuICAgIH0pLFxuICAgIFtzZXRQcm9kdWN0c10sXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIHRoaXMgdmFyaWFibGUgY2hlY2sgaWYgdGhlcmUgaXMgYSBtYXhBbW91bnQgaW4gZWFjaCBwcm9kdWN0XG4gICAgLy8gaWYgbm90IHdlIGRvIG5vdCBuZWVkIHRvIGNhbGN1bGF0ZSBtYXhUb3RhbCwgbWF4SG91cmx5LCBtYXhPdmVybGF5SG91cmx5XG4gICAgY29uc3QgaXNNYXhBbW91bnRJblByb2R1Y3RzID0gcHJvZHVjdHMuZmluZChwcm9kdWN0ID0+IHByb2R1Y3QubWF4QW1vdW50KVxuICAgIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzKFxuICAgICAgISFwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5sb25nRnJhY3Rpb25EaWdpdHMpLFxuICAgIClcbiAgICBzZXRUb3RhbFByaWNlKHtcbiAgICAgIGhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgbWF4SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgJiYgcHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApLFxuXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4T3ZlcmxheUhvdXJseTogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QubWF4QW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4VG90YWw6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyArXG4gICAgICAgICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICAgICAgICBhbW91bnQ6IHByb2R1Y3QubWF4QW1vdW50IHx8IHByb2R1Y3QuYW1vdW50LCAvLyBOb3QgYWxsIHByb2R1Y3RzIGhhdmUgbWF4QW1vdW50LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGJvdGhcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICAgIG92ZXJsYXlIb3VybHk6IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICBhY2MgK1xuICAgICAgICAgIChwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0LmFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCkpLFxuICAgICAgICAwLFxuICAgICAgKSxcbiAgICAgIHRvdGFsOiAhaGlkZVRvdGFsXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5hbW91bnQsXG4gICAgICAgICAgICAgICAgYW1vdW50RnJlZTogcHJvZHVjdC5hbW91bnRGcmVlLFxuICAgICAgICAgICAgICAgIGRpc2NvdW50OiBwcm9kdWN0LmRpc2NvdW50LFxuICAgICAgICAgICAgICAgIHByaWNlOiBwcm9kdWN0LnByaWNlLFxuICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAxIDogaXRlcmF0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgIHRpbWVVbml0OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IGl0ZXJhdGlvbi51bml0LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgfSlcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2U/Lih7XG4gICAgICB0b3RhbDogdG90YWxQcmljZS50b3RhbCxcbiAgICAgIHRvdGFsTWF4OiB0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IHRvdGFsUHJpY2UubWF4VG90YWwgOiB1bmRlZmluZWQsXG4gICAgfSlcbiAgfSwgW1xuICAgIGhpZGVUb3RhbCxcbiAgICBwcm9kdWN0cyxcbiAgICBpdGVyYXRpb24sXG4gICAgc2V0VG90YWxQcmljZSxcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2UsXG4gICAgdG90YWxQcmljZS50b3RhbCxcbiAgICB0b3RhbFByaWNlLm1heFRvdGFsLFxuICAgIHRvdGFsVmFsdWUsXG4gICAgdG90YWxNYXhWYWx1ZSxcbiAgXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGhpZGVUaW1lVW5pdCAmJlxuICAgICAgKGl0ZXJhdGlvbi52YWx1ZSA+IDEgfHwgaXRlcmF0aW9uLnVuaXQgIT09IChkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJykpXG4gICAgKSB7XG4gICAgICBzZXRJdGVyYXRpb24oeyB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJywgdmFsdWU6IDEgfSlcbiAgICB9XG4gIH0sIFtoaWRlVGltZVVuaXQsIGl0ZXJhdGlvbiwgZGVmYXVsdFRpbWVVbml0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgeyFoaWRlT3ZlcmxheSA/IChcbiAgICAgICAgPE92ZXJsYXlDb21wb25lbnRcbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheUxlZnQ9e2Rpc2FibGVPdmVybGF5TGVmdH1cbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheVJpZ2h0PXtkaXNhYmxlT3ZlcmxheVJpZ2h0fVxuICAgICAgICAgIGRpc2NvdW50PXtkaXNjb3VudH1cbiAgICAgICAgICBpblZpZXc9e2luVmlld31cbiAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICBPdmVybGF5TGVmdD17T3ZlcmxheUxlZnR9XG4gICAgICAgICAgT3ZlcmxheVJpZ2h0PXtPdmVybGF5UmlnaHR9XG4gICAgICAgICAgb3ZlcmxheU1hcmdpbj17b3ZlcmxheU1hcmdpbn1cbiAgICAgICAgICB0b3RhbFByaWNlPXt0b3RhbFByaWNlfVxuICAgICAgICAgIHVuaXQ9e292ZXJsYXlVbml0ID8/ICdob3Vycyd9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvT3ZlcmxheUNvbXBvbmVudD5cbiAgICAgICkgOiBudWxsfVxuICAgICAge2Rlc2NyaXB0aW9uID09PSBmYWxzZSA/IG51bGwgOiAoXG4gICAgICAgIDxEZXNjcmlwdGlvbkNvbXBvbmVudCBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICApfVxuICAgICAge2FsZXJ0ID8gKFxuICAgICAgICA8QWxlcnQgc2VudGltZW50PXthbGVydFZhcmlhbnR9IHRpdGxlPXthbGVydFRpdGxlfT5cbiAgICAgICAgICB7YWxlcnR9XG4gICAgICAgIDwvQWxlcnQ+XG4gICAgICApIDogbnVsbH1cbiAgICAgIDxPdmVybGF5Q29udGV4dFByb3ZpZGVyIHZhbHVlPXtwcm92aWRlclZhbHVlfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICB7Y2hpbGRyZW4gPyAoXG4gICAgICAgICAgICA8U3R5bGVkVGFibGVcbiAgICAgICAgICAgICAgY2VsbFBhZGRpbmc9XCIwXCJcbiAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9XCIwXCJcbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzdW1tYXJ5XCJcbiAgICAgICAgICAgICAgbm9Ub3RhbD17aGlkZVRvdGFsfVxuICAgICAgICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgeyFoaWRlVGltZVVuaXQgPyAoXG4gICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpdGxlQ29tcG9uZW50IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEN1c3RvbVVuaXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGltZVVuaXQ9e2RlZmF1bHRUaW1lVW5pdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlcmF0aW9uPXtpdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldEl0ZXJhdGlvbj17c2V0SXRlcmF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdHM9e3RpbWVVbml0c31cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9UaW1lQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAge0NoaWxkcmVuLm1hcChjaGlsZHJlbiwgKGNoaWxkLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgIGlzVmFsaWRFbGVtZW50PEV4dHJhUHJvcHM+KGNoaWxkKVxuICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBkaXNjb3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudD86IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudDogaW5kZXggPT09IENoaWxkcmVuLmNvdW50KGNoaWxkcmVuKSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgIDwvU3R5bGVkVGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgeyFoaWRlVG90YWwgPyAoXG4gICAgICAgICAgICA8RW1wdHlUYWJsZSBjZWxsUGFkZGluZz1cIjBcIiBjZWxsU3BhY2luZz1cIjBcIj5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgIDxFbXB0eUNlbGwgYXJpYS1sYWJlbD1cImNvbnRyb2xcIiAvPlxuICAgICAgICAgICAgICAgICAgPFRvdGFsUHJpY2VDZWxsIGhhc0JvcmRlcj17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICB7aXNCZXRhID8gKFxuICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZUJldGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvbmc9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLmxlbmd0aCA+IDI1XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtgJHtkaXNjb3VudCA+IDAgPyBkaXNjb3VudCAqIDEwMCA6ICcnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5iZXRhLiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0JhZGdlQmV0YT5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgYXM9XCJoM1wiXG4gICAgICAgICAgICAgICAgICAgICAgaXNCZXRhPXtpc0JldGF9XG4gICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IGAgLSAke3RvdGFsTWF4VmFsdWV9YCA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0PlxuICAgICAgICAgICAgICAgICAgICB7aGlkZUhvdXJseVByaWNlT25Ub3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS5ob3VybHkgIT09IHRvdGFsUHJpY2UudG90YWwgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS50b3RhbCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPFJpZ2h0QWxpZ25lZFRleHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxMaW5lVGhyb3VnaFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLmhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxQcmljZS5tYXhIb3VybHkgPiAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIodG90YWxQcmljZS5tYXhIb3VybHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzLmhvdXJzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbGBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgICA8L1JpZ2h0QWxpZ25lZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9Ub3RhbFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9FbXB0eVRhYmxlPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtjb21taXRtZW50RmVlcyAhPT0gdW5kZWZpbmVkIHx8IG1vbnRobHlGZWVzICE9PSB1bmRlZmluZWQgPyAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICA8RmVlc1RleHQgYXM9XCJoM1wiIHZhcmlhbnQ9XCJoZWFkaW5nU21hbGxcIj5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5mZWVzLiR7XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXMgPyAnb25lVGltZScgOiAnbW9udGhseSdcbiAgICAgICAgICAgICAgICAgICAgfS50aXRsZWBcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvRmVlc1RleHQ+XG4gICAgICAgICAgICAgIDxTdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgPEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICAgID8gbG9jYWxlc1snZXN0aW1hdGUuY29zdC5mZWVzLmNvbW1pdG1lbnQnXVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0xhYmVsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgcHJpY2U9e2NvbW1pdG1lbnRGZWVzIHx8IG1vbnRobHlGZWVzfVxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPXt7XG4gICAgICAgICAgICAgICAgICAgICAgYWRkOiAoKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAgICAgICByZW1vdmU6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7Y29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICA/IGNvbW1pdG1lbnRGZWVzQ29udGVudFxuICAgICAgICAgICAgICAgICAgICAgIDogbW9udGhseUZlZXNDb250ZW50fVxuICAgICAgICAgICAgICAgICAgPC9JdGVtPlxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgIDwvU3R5bGVkRmVlc1RhYmxlPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9PdmVybGF5Q29udGV4dFByb3ZpZGVyPlxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */"));
33
- const StyledText = /* @__PURE__ */ _styled__default.default(ui.Text, process.env.NODE_ENV === "production" ? {
34
- target: "excc3v73"
35
- } : {
36
- target: "excc3v73",
37
- label: "StyledText"
38
- })("text-align:right;", ({
39
- isBeta,
40
- theme
41
- }) => isBeta ? `margin-left: ${theme.space["2"]};` : null, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9ERSIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Fc3RpbWF0ZUNvc3RDb250ZW50LnRzeCIsInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCB7IENhbGN1bGF0b3JJY29uIH0gZnJvbSAnQHVsdHJhdmlvbGV0L2ljb25zJ1xuaW1wb3J0IHsgQWxlcnQsIFN0YWNrLCBUZXh0IH0gZnJvbSAnQHVsdHJhdmlvbGV0L3VpJ1xuaW1wb3J0IHR5cGUgeyBDb21wb25lbnRQcm9wcywgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBDaGlsZHJlbixcbiAgY2xvbmVFbGVtZW50LFxuICBpc1ZhbGlkRWxlbWVudCxcbiAgbWVtbyxcbiAgdXNlRWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VJblZpZXcgfSBmcm9tICdyZWFjdC1pbnRlcnNlY3Rpb24tb2JzZXJ2ZXInXG5pbXBvcnQgeyBDdXN0b21Vbml0SW5wdXQgfSBmcm9tICcuL0NvbXBvbmVudHMvQ3VzdG9tVW5pdElucHV0J1xuaW1wb3J0IHsgSXRlbSB9IGZyb20gJy4vQ29tcG9uZW50cy9JdGVtJ1xuaW1wb3J0IHsgTGluZVRocm91Z2ggfSBmcm9tICcuL0NvbXBvbmVudHMvTGluZVRocm91Z2gnXG5pbXBvcnQge1xuICBCYWRnZUJldGEsXG4gIENlbGwsXG4gIEVtcHR5Q2VsbCxcbiAgRW1wdHlUYWJsZSxcbiAgUHJpY2VDb2wsXG4gIHByaWNlQ2VsbCxcbiAgU3R5bGVkRmVlc1RhYmxlLFxuICBTdHlsZWRUYWJsZSxcbiAgVGltZUNlbGwsXG4gIFRpdGxlLFxuICBUb3RhbFByaWNlQ2VsbCxcbn0gZnJvbSAnLi9jb21wb25lbnRTdHlsZSdcbmltcG9ydCB7IG1heGltdW1GcmFjdGlvbkRpZ2l0cywgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyB9IGZyb20gJy4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi9Fc3RpbWF0ZUNvc3RQcm92aWRlcidcbmltcG9ydCB7IGNhbGN1bGF0ZVByaWNlIH0gZnJvbSAnLi9oZWxwZXInXG5pbXBvcnQgRXN0aW1hdGVDb3N0TG9jYWxlcyBmcm9tICcuL2xvY2FsZXMvZW4nXG5pbXBvcnQgeyBPdmVybGF5Q29tcG9uZW50IH0gZnJvbSAnLi9PdmVybGF5Q29tcG9uZW50J1xuaW1wb3J0IHsgT3ZlcmxheUNvbnRleHRQcm92aWRlciB9IGZyb20gJy4vT3ZlcmxheUNvbnRleHQnXG5pbXBvcnQgdHlwZSB7XG4gIEJhcmVFc3RpbWF0ZVByb2R1Y3QsXG4gIEVzdGltYXRlQ29zdFByb3BzLFxuICBFc3RpbWF0ZVByb2R1Y3QsXG4gIEl0ZXJhdGlvbixcbiAgVW5pdHMsXG59IGZyb20gJy4vdHlwZXMnXG5cbmNvbnN0IEZlZXNUZXh0ID0gc3R5bGVkKFRleHQpYFxuICBtYXJnaW4tdG9wOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWyczJ119O1xuYFxuXG5jb25zdCBTdHlsZWRUZXh0ID0gc3R5bGVkKFRleHQpPHtcbiAgaXNCZXRhPzogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICAkeyh7IGlzQmV0YSwgdGhlbWUgfSkgPT5cbiAgICBpc0JldGEgPyBgbWFyZ2luLWxlZnQ6ICR7dGhlbWUuc3BhY2VbJzInXX07YCA6IG51bGx9XG5gXG5cbmNvbnN0IFJpZ2h0QWxpZ25lZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuYFxuXG5jb25zdCBTdHlsZWRDYWxjdWxhdG9ySWNvbiA9IHN0eWxlZChDYWxjdWxhdG9ySWNvbilgXG4gIG1hcmdpbi1yaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKENlbGwud2l0aENvbXBvbmVudCgndGgnKSlgXG4gICR7KHsgdGhlbWUgfSkgPT4gcHJpY2VDZWxsKHRoZW1lKX1cbiAgcGFkZGluZzogMDtcbmBcblxuY29uc3QgREVGQVVMVF9VTklUX0xJU1Q6IFVuaXRzW10gPSBbJ2hvdXJzJywgJ2RheXMnLCAnbW9udGhzJ11cblxudHlwZSBFeHRyYVByb3BzID0ge1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgZGlzY291bnQ/OiBudW1iZXJcbn1cblxuY29uc3QgRGVzY3JpcHRpb25Db21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGRlc2NyaXB0aW9uLFxuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBkZXNjcmlwdGlvbjogUmVhY3ROb2RlXG4gICAgbG9jYWxlczogUmVjb3JkPGtleW9mIHR5cGVvZiBFc3RpbWF0ZUNvc3RMb2NhbGVzLCBzdHJpbmc+XG4gIH0pID0+XG4gICAgZGVzY3JpcHRpb24gPT09IHVuZGVmaW5lZCB8fCB0eXBlb2YgZGVzY3JpcHRpb24gPT09ICdzdHJpbmcnID8gKFxuICAgICAgPFRleHQgYXM9XCJzcGFuXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAge2Rlc2NyaXB0aW9uIHx8IGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QuZGVzY3JpcHRpb24nXX1cbiAgICAgIDwvVGV4dD5cbiAgICApIDogKFxuICAgICAgZGVzY3JpcHRpb25cbiAgICApLFxuKVxuXG5jb25zdCBUaXRsZUNvbXBvbmVudCA9IG1lbW8oXG4gICh7XG4gICAgbG9jYWxlcyxcbiAgfToge1xuICAgIGxvY2FsZXM6IFJlcXVpcmVkPENvbXBvbmVudFByb3BzPHR5cGVvZiBFc3RpbWF0ZUNvc3RDb250ZW50PlsnbG9jYWxlcyddPlxuICB9KSA9PiAoXG4gICAgPFRpdGxlPlxuICAgICAgPFN0eWxlZENhbGN1bGF0b3JJY29uIHNlbnRpbWVudD1cInByaW1hcnlcIiBzaXplPVwibWVkaXVtXCIgLz5cbiAgICAgIHtsb2NhbGVzPy5bJ2VzdGltYXRlLmNvc3QubGFiZWwnXX1cbiAgICA8L1RpdGxlPlxuICApLFxuKVxuXG5leHBvcnQgY29uc3QgRXN0aW1hdGVDb3N0Q29udGVudCA9ICh7XG4gIGRlc2NyaXB0aW9uLFxuICBhbGVydCxcbiAgYWxlcnRUaXRsZSxcbiAgYWxlcnRWYXJpYW50ID0gJ3dhcm5pbmcnLFxuICBkZWZhdWx0VGltZVVuaXQgPSAnaG91cnMnLFxuICB0aW1lVW5pdHMgPSBERUZBVUxUX1VOSVRfTElTVCxcbiAgaGlkZU92ZXJsYXkgPSBmYWxzZSxcbiAgZGlzYWJsZU92ZXJsYXlMZWZ0ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5UmlnaHQgPSBmYWxzZSxcbiAgaGlkZVRpbWVVbml0ID0gZmFsc2UsXG4gIGhpZGVUb3RhbCA9IGZhbHNlLFxuICBoaWRlSG91cmx5UHJpY2VPblRvdGFsID0gZmFsc2UsXG4gIGRpc2NvdW50ID0gMCxcbiAgT3ZlcmxheVJpZ2h0LFxuICBPdmVybGF5TGVmdCxcbiAgaXNCZXRhID0gZmFsc2UsXG4gIGNvbW1pdG1lbnRGZWVzLFxuICBjb21taXRtZW50RmVlc0NvbnRlbnQsXG4gIG1vbnRobHlGZWVzLFxuICBtb250aGx5RmVlc0xhYmVsLFxuICBtb250aGx5RmVlc0NvbnRlbnQsXG4gIG92ZXJsYXlVbml0ID0gJ2hvdXJzJyxcbiAgY2hpbGRyZW4gPSBudWxsLFxuICBsb2NhbGVzID0gRXN0aW1hdGVDb3N0TG9jYWxlcyxcbiAgb3ZlcmxheU1hcmdpbixcbiAgb25Ub3RhbFByaWNlQ2hhbmdlLFxufTogRXN0aW1hdGVDb3N0UHJvcHMpID0+IHtcbiAgY29uc3QgeyBmb3JtYXROdW1iZXIgfSA9IHVzZUVzdGltYXRlQ29zdCgpXG4gIGNvbnN0IFtyZWYsIGluVmlld10gPSB1c2VJblZpZXcoKVxuICBjb25zdCBbcHJvZHVjdHMsIHNldFByb2R1Y3RzXSA9IHVzZVN0YXRlPEVzdGltYXRlUHJvZHVjdFtdPihbXSkgLy8gcHJvZHVjdCBpcyB1c2VkIHRvIHN0b3JlIGVhY2ggaXRlbXMgd2l0aCB0aGVpciBwcmljZSBhbmQgYW1vdW50XG4gIGNvbnN0IFt0b3RhbFByaWNlLCBzZXRUb3RhbFByaWNlXSA9IHVzZVN0YXRlKHtcbiAgICBob3VybHk6IDAsXG4gICAgbWF4SG91cmx5OiAwLFxuICAgIG1heE92ZXJsYXlIb3VybHk6IDAsXG4gICAgbWF4VG90YWw6IDAsXG4gICAgb3ZlcmxheUhvdXJseTogMCxcbiAgICB0b3RhbDogMCxcbiAgfSlcbiAgY29uc3QgW2l0ZXJhdGlvbiwgc2V0SXRlcmF0aW9uXSA9IHVzZVN0YXRlPEl0ZXJhdGlvbj4oe1xuICAgIHVuaXQ6IGRlZmF1bHRUaW1lVW5pdCA/PyAnaG91cnMnLFxuICAgIHZhbHVlOiAxLFxuICB9KVxuXG4gIGNvbnN0IFtpc0xvbmdGcmFjdGlvbkRpZ2l0cywgc2V0SXNMb25nRnJhY3Rpb25EaWdpdHNdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IHByb3ZpZGVyVmFsdWUgPSB1c2VNZW1vKCgpID0+ICh7IGlzT3ZlcmxheTogZmFsc2UgfSksIFtdKVxuXG4gIGNvbnN0IHRvdGFsVmFsdWUgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBmb3JtYXROdW1iZXIodG90YWxQcmljZS50b3RhbCA8IDAgPyAwIDogdG90YWxQcmljZS50b3RhbCwge1xuICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGlzTG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgICAgPyBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nW2l0ZXJhdGlvbi51bml0XVxuICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbi51bml0XSxcbiAgICAgIH0pLFxuICAgIFtmb3JtYXROdW1iZXIsIGlzTG9uZ0ZyYWN0aW9uRGlnaXRzLCBpdGVyYXRpb24udW5pdCwgdG90YWxQcmljZS50b3RhbF0sXG4gIClcblxuICBjb25zdCB0b3RhbE1heFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UubWF4VG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UubWF4VG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UubWF4VG90YWxdLFxuICApXG5cbiAgY29uc3QgcHJvZHVjdHNDYWxsYmFjayA9IHVzZU1lbW8oXG4gICAgKCkgPT4gKHtcbiAgICAgIGFkZDogKG5ld1Byb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB7XG4gICAgICAgICAgaWYgKHRvdGFsLmZpbmQocHJvZHVjdCA9PiBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRvdGFsLm1hcChwcm9kdWN0ID0+XG4gICAgICAgICAgICAgIHByb2R1Y3QuaWQgPT09IG5ld1Byb2R1Y3QuaWQgPyBuZXdQcm9kdWN0IDogcHJvZHVjdCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gWy4uLnRvdGFsLCBuZXdQcm9kdWN0XVxuICAgICAgICB9KVxuICAgICAgfSxcblxuICAgICAgcmVtb3ZlOiAoeyBpZCB9OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB7XG4gICAgICAgIHNldFByb2R1Y3RzKHRvdGFsID0+IHRvdGFsLmZpbHRlcihwcm9kdWN0ID0+IHByb2R1Y3QuaWQgIT09IGlkKSlcbiAgICAgIH0sXG4gICAgfSksXG4gICAgW3NldFByb2R1Y3RzXSxcbiAgKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gdGhpcyB2YXJpYWJsZSBjaGVjayBpZiB0aGVyZSBpcyBhIG1heEFtb3VudCBpbiBlYWNoIHByb2R1Y3RcbiAgICAvLyBpZiBub3Qgd2UgZG8gbm90IG5lZWQgdG8gY2FsY3VsYXRlIG1heFRvdGFsLCBtYXhIb3VybHksIG1heE92ZXJsYXlIb3VybHlcbiAgICBjb25zdCBpc01heEFtb3VudEluUHJvZHVjdHMgPSBwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5tYXhBbW91bnQpXG4gICAgc2V0SXNMb25nRnJhY3Rpb25EaWdpdHMoXG4gICAgICAhIXByb2R1Y3RzLmZpbmQocHJvZHVjdCA9PiBwcm9kdWN0LmxvbmdGcmFjdGlvbkRpZ2l0cyksXG4gICAgKVxuICAgIHNldFRvdGFsUHJpY2Uoe1xuICAgICAgaG91cmx5OiBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgYWNjICtcbiAgICAgICAgICAocHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgPyAwXG4gICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5hbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApKSxcbiAgICAgICAgMCxcbiAgICAgICksXG4gICAgICBtYXhIb3VybHk6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyAmJiBwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgPyAwXG4gICAgICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0Lm1heEFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCksXG5cbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgICBtYXhPdmVybGF5SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgK1xuICAgICAgICAgICAgICAocHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApKSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgICBtYXhUb3RhbDogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5tYXhBbW91bnQgfHwgcHJvZHVjdC5hbW91bnQsIC8vIE5vdCBhbGwgcHJvZHVjdHMgaGF2ZSBtYXhBbW91bnQsIHNvIHdlIG5lZWQgdG8gY2hlY2sgYm90aFxuICAgICAgICAgICAgICAgIGFtb3VudEZyZWU6IHByb2R1Y3QuYW1vdW50RnJlZSxcbiAgICAgICAgICAgICAgICBkaXNjb3VudDogcHJvZHVjdC5kaXNjb3VudCxcbiAgICAgICAgICAgICAgICBwcmljZTogcHJvZHVjdC5wcmljZSxcbiAgICAgICAgICAgICAgICB0aW1lQW1vdW50OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gMSA6IGl0ZXJhdGlvbi52YWx1ZSxcbiAgICAgICAgICAgICAgICB0aW1lVW5pdDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/ICdob3VycycgOiBpdGVyYXRpb24udW5pdCxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgb3ZlcmxheUhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgdG90YWw6ICFoaWRlVG90YWxcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgK1xuICAgICAgICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgICAgICAgYW1vdW50OiBwcm9kdWN0LmFtb3VudCxcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICB9KVxuICAgIG9uVG90YWxQcmljZUNoYW5nZT8uKHtcbiAgICAgIHRvdGFsOiB0b3RhbFByaWNlLnRvdGFsLFxuICAgICAgdG90YWxNYXg6IHRvdGFsUHJpY2UubWF4VG90YWwgPiAwID8gdG90YWxQcmljZS5tYXhUb3RhbCA6IHVuZGVmaW5lZCxcbiAgICB9KVxuICB9LCBbXG4gICAgaGlkZVRvdGFsLFxuICAgIHByb2R1Y3RzLFxuICAgIGl0ZXJhdGlvbixcbiAgICBzZXRUb3RhbFByaWNlLFxuICAgIG9uVG90YWxQcmljZUNoYW5nZSxcbiAgICB0b3RhbFByaWNlLnRvdGFsLFxuICAgIHRvdGFsUHJpY2UubWF4VG90YWwsXG4gICAgdG90YWxWYWx1ZSxcbiAgICB0b3RhbE1heFZhbHVlLFxuICBdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgaGlkZVRpbWVVbml0ICYmXG4gICAgICAoaXRlcmF0aW9uLnZhbHVlID4gMSB8fCBpdGVyYXRpb24udW5pdCAhPT0gKGRlZmF1bHRUaW1lVW5pdCA/PyAnaG91cnMnKSlcbiAgICApIHtcbiAgICAgIHNldEl0ZXJhdGlvbih7IHVuaXQ6IGRlZmF1bHRUaW1lVW5pdCA/PyAnaG91cnMnLCB2YWx1ZTogMSB9KVxuICAgIH1cbiAgfSwgW2hpZGVUaW1lVW5pdCwgaXRlcmF0aW9uLCBkZWZhdWx0VGltZVVuaXRdKVxuXG4gIHJldHVybiAoXG4gICAgPFN0YWNrIGdhcD17Mn0+XG4gICAgICB7IWhpZGVPdmVybGF5ID8gKFxuICAgICAgICA8T3ZlcmxheUNvbXBvbmVudFxuICAgICAgICAgIGRpc2FibGVPdmVybGF5TGVmdD17ZGlzYWJsZU92ZXJsYXlMZWZ0fVxuICAgICAgICAgIGRpc2FibGVPdmVybGF5UmlnaHQ9e2Rpc2FibGVPdmVybGF5UmlnaHR9XG4gICAgICAgICAgZGlzY291bnQ9e2Rpc2NvdW50fVxuICAgICAgICAgIGluVmlldz17aW5WaWV3fVxuICAgICAgICAgIGlzQmV0YT17aXNCZXRhfVxuICAgICAgICAgIE92ZXJsYXlMZWZ0PXtPdmVybGF5TGVmdH1cbiAgICAgICAgICBPdmVybGF5UmlnaHQ9e092ZXJsYXlSaWdodH1cbiAgICAgICAgICBvdmVybGF5TWFyZ2luPXtvdmVybGF5TWFyZ2lufVxuICAgICAgICAgIHRvdGFsUHJpY2U9e3RvdGFsUHJpY2V9XG4gICAgICAgICAgdW5pdD17b3ZlcmxheVVuaXQgPz8gJ2hvdXJzJ31cbiAgICAgICAgPlxuICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPC9PdmVybGF5Q29tcG9uZW50PlxuICAgICAgKSA6IG51bGx9XG4gICAgICB7ZGVzY3JpcHRpb24gPT09IGZhbHNlID8gbnVsbCA6IChcbiAgICAgICAgPERlc2NyaXB0aW9uQ29tcG9uZW50IGRlc2NyaXB0aW9uPXtkZXNjcmlwdGlvbn0gbG9jYWxlcz17bG9jYWxlc30gLz5cbiAgICAgICl9XG4gICAgICB7YWxlcnQgPyAoXG4gICAgICAgIDxBbGVydCBzZW50aW1lbnQ9e2FsZXJ0VmFyaWFudH0gdGl0bGU9e2FsZXJ0VGl0bGV9PlxuICAgICAgICAgIHthbGVydH1cbiAgICAgICAgPC9BbGVydD5cbiAgICAgICkgOiBudWxsfVxuICAgICAgPE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgdmFsdWU9e3Byb3ZpZGVyVmFsdWV9PlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtjaGlsZHJlbiA/IChcbiAgICAgICAgICAgIDxTdHlsZWRUYWJsZVxuICAgICAgICAgICAgICBjZWxsUGFkZGluZz1cIjBcIlxuICAgICAgICAgICAgICBjZWxsU3BhY2luZz1cIjBcIlxuICAgICAgICAgICAgICBkYXRhLXRlc3RpZD1cInN1bW1hcnlcIlxuICAgICAgICAgICAgICBub1RvdGFsPXtoaWRlVG90YWx9XG4gICAgICAgICAgICAgIHJlZj17cmVmfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8Y29sZ3JvdXA+XG4gICAgICAgICAgICAgICAgPGNvbCAvPlxuICAgICAgICAgICAgICAgIDxQcmljZUNvbCAvPlxuICAgICAgICAgICAgICA8L2NvbGdyb3VwPlxuICAgICAgICAgICAgICB7IWhpZGVUaW1lVW5pdCA/IChcbiAgICAgICAgICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgICAgICAgICAgICA8VGl0bGVDb21wb25lbnQgbG9jYWxlcz17bG9jYWxlc30gLz5cbiAgICAgICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgICA8VGltZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q3VzdG9tVW5pdElucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRUaW1lVW5pdD17ZGVmYXVsdFRpbWVVbml0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb249e2l0ZXJhdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0SXRlcmF0aW9uPXtzZXRJdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVVbml0cz17dGltZVVuaXRzfVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1RpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgPC90aGVhZD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICB7Q2hpbGRyZW4ubWFwKGNoaWxkcmVuLCAoY2hpbGQsIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgID8gY2xvbmVFbGVtZW50KGNoaWxkLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZCBhcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICkucHJvcHMgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ/OiBudW1iZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkuZGlzY291bnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZCBhcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkucHJvcHMgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0xhc3RFbGVtZW50OiBpbmRleCA9PT0gQ2hpbGRyZW4uY291bnQoY2hpbGRyZW4pIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZXJhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3RzQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgOiBjaGlsZCxcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9TdHlsZWRUYWJsZT5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICB7IWhpZGVUb3RhbCA/IChcbiAgICAgICAgICAgIDxFbXB0eVRhYmxlIGNlbGxQYWRkaW5nPVwiMFwiIGNlbGxTcGFjaW5nPVwiMFwiPlxuICAgICAgICAgICAgICA8Y29sZ3JvdXA+XG4gICAgICAgICAgICAgICAgPGNvbCAvPlxuICAgICAgICAgICAgICAgIDxQcmljZUNvbCAvPlxuICAgICAgICAgICAgICA8L2NvbGdyb3VwPlxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgPEVtcHR5Q2VsbCBhcmlhLWxhYmVsPVwiY29udHJvbFwiIC8+XG4gICAgICAgICAgICAgICAgICA8VG90YWxQcmljZUNlbGwgaGFzQm9yZGVyPXtmYWxzZX0+XG4gICAgICAgICAgICAgICAgICAgIHtpc0JldGEgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPEJhZGdlQmV0YVxuICAgICAgICAgICAgICAgICAgICAgICAgbG9uZz17XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYGVzdGltYXRlLmNvc3QuYmV0YS4ke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQgPiAwID8gJ2Rpc2NvdW50JyA6ICdmcmVlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0ubGVuZ3RoID4gMjVcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHByb21pbmVuY2U9XCJzdHJvbmdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwid2FybmluZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAge2Ake2Rpc2NvdW50ID4gMCA/IGRpc2NvdW50ICogMTAwIDogJyd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQgPiAwID8gJ2Rpc2NvdW50JyA6ICdmcmVlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfWBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgICAgICAgICAgIDwvQmFkZ2VCZXRhPlxuICAgICAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHRcbiAgICAgICAgICAgICAgICAgICAgICBhcz1cImgzXCJcbiAgICAgICAgICAgICAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwiaGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8TGluZVRocm91Z2hcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzQWN0aXZlPXtpc0JldGEgJiYgKGRpc2NvdW50ID09PSAwIHx8IGRpc2NvdW50ID49IDEpfVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAge3RvdGFsUHJpY2UubWF4VG90YWwgPiAwID8gYCAtICR7dG90YWxNYXhWYWx1ZX1gIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0xpbmVUaHJvdWdoPlxuICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgIHtoaWRlSG91cmx5UHJpY2VPblRvdGFsICYmXG4gICAgICAgICAgICAgICAgICAgIHRvdGFsUHJpY2UuaG91cmx5ID4gMCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSAhPT0gdG90YWxQcmljZS50b3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLnRvdGFsID4gMCA/IChcbiAgICAgICAgICAgICAgICAgICAgICA8UmlnaHRBbGlnbmVkVGV4dCBhcz1cInBcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlzQWN0aXZlPXtpc0JldGEgJiYgKGRpc2NvdW50ID09PSAwIHx8IGRpc2NvdW50ID49IDEpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UuaG91cmx5LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nLmhvdXJzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0cy5ob3VycyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heEhvdXJseSA+IDBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGAgLSAke2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heEhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGlzTG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nLmhvdXJzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAvXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LnVuaXRzLmhvdXJzLmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0xpbmVUaHJvdWdoPlxuICAgICAgICAgICAgICAgICAgICAgIDwvUmlnaHRBbGlnbmVkVGV4dD5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICA8L1RvdGFsUHJpY2VDZWxsPlxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICA8L0VtcHR5VGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAge2NvbW1pdG1lbnRGZWVzICE9PSB1bmRlZmluZWQgfHwgbW9udGhseUZlZXMgIT09IHVuZGVmaW5lZCA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxGZWVzVGV4dCBhcz1cImgzXCIgdmFyaWFudD1cImhlYWRpbmdTbWFsbFwiPlxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmZlZXMuJHtcbiAgICAgICAgICAgICAgICAgICAgICBjb21taXRtZW50RmVlcyA/ICdvbmVUaW1lJyA6ICdtb250aGx5J1xuICAgICAgICAgICAgICAgICAgICB9LnRpdGxlYFxuICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9GZWVzVGV4dD5cbiAgICAgICAgICAgICAgPFN0eWxlZEZlZXNUYWJsZT5cbiAgICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgICA8SXRlbVxuICAgICAgICAgICAgICAgICAgICBpc0xhc3RFbGVtZW50XG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgICAgICAgICBjb21taXRtZW50RmVlc1xuICAgICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmZlZXMuY29tbWl0bWVudCddXG4gICAgICAgICAgICAgICAgICAgICAgICA6IG1vbnRobHlGZWVzTGFiZWxcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICBwcmljZT17Y29tbWl0bWVudEZlZXMgfHwgbW9udGhseUZlZXN9XG4gICAgICAgICAgICAgICAgICAgIHByb2R1Y3RzQ2FsbGJhY2s9e3tcbiAgICAgICAgICAgICAgICAgICAgICBhZGQ6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICAgIHJlbW92ZTogKCkgPT4ge30sXG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtjb21taXRtZW50RmVlc1xuICAgICAgICAgICAgICAgICAgICAgID8gY29tbWl0bWVudEZlZXNDb250ZW50XG4gICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0NvbnRlbnR9XG4gICAgICAgICAgICAgICAgICA8L0l0ZW0+XG4gICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgPC9TdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L092ZXJsYXlDb250ZXh0UHJvdmlkZXI+XG4gICAgPC9TdGFjaz5cbiAgKVxufVxuIl19 */"));
42
- const RightAlignedText = /* @__PURE__ */ _styled__default.default(ui.Text, process.env.NODE_ENV === "production" ? {
43
- target: "excc3v72"
44
- } : {
45
- target: "excc3v72",
46
- label: "RightAlignedText"
47
- })(process.env.NODE_ENV === "production" ? {
48
- name: "2qga7i",
49
- styles: "text-align:right"
50
- } : {
51
- name: "2qga7i",
52
- styles: "text-align:right/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBEcUMiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvcGx1cy9zcmMvY29tcG9uZW50cy9Fc3RpbWF0ZUNvc3QvRXN0aW1hdGVDb3N0Q29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBDYWxjdWxhdG9ySWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEFsZXJ0LCBTdGFjaywgVGV4dCB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlSW5WaWV3IH0gZnJvbSAncmVhY3QtaW50ZXJzZWN0aW9uLW9ic2VydmVyJ1xuaW1wb3J0IHsgQ3VzdG9tVW5pdElucHV0IH0gZnJvbSAnLi9Db21wb25lbnRzL0N1c3RvbVVuaXRJbnB1dCdcbmltcG9ydCB7IEl0ZW0gfSBmcm9tICcuL0NvbXBvbmVudHMvSXRlbSdcbmltcG9ydCB7IExpbmVUaHJvdWdoIH0gZnJvbSAnLi9Db21wb25lbnRzL0xpbmVUaHJvdWdoJ1xuaW1wb3J0IHtcbiAgQmFkZ2VCZXRhLFxuICBDZWxsLFxuICBFbXB0eUNlbGwsXG4gIEVtcHR5VGFibGUsXG4gIFByaWNlQ29sLFxuICBwcmljZUNlbGwsXG4gIFN0eWxlZEZlZXNUYWJsZSxcbiAgU3R5bGVkVGFibGUsXG4gIFRpbWVDZWxsLFxuICBUaXRsZSxcbiAgVG90YWxQcmljZUNlbGwsXG59IGZyb20gJy4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQgeyBtYXhpbXVtRnJhY3Rpb25EaWdpdHMsIG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcgfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB7IHVzZUVzdGltYXRlQ29zdCB9IGZyb20gJy4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4vaGVscGVyJ1xuaW1wb3J0IEVzdGltYXRlQ29zdExvY2FsZXMgZnJvbSAnLi9sb2NhbGVzL2VuJ1xuaW1wb3J0IHsgT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vT3ZlcmxheUNvbXBvbmVudCdcbmltcG9ydCB7IE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgfSBmcm9tICcuL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZUNvc3RQcm9wcyxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBGZWVzVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMyddfTtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIGlzQmV0YT86IGJvb2xlYW5cbn0+YFxuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgJHsoeyBpc0JldGEsIHRoZW1lIH0pID0+XG4gICAgaXNCZXRhID8gYG1hcmdpbi1sZWZ0OiAke3RoZW1lLnNwYWNlWycyJ119O2AgOiBudWxsfVxuYFxuXG5jb25zdCBSaWdodEFsaWduZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkQ2FsY3VsYXRvckljb24gPSBzdHlsZWQoQ2FsY3VsYXRvckljb24pYFxuICBtYXJnaW4tcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IFN0eWxlZFByaWNlQ2VsbCA9IHN0eWxlZChDZWxsLndpdGhDb21wb25lbnQoJ3RoJykpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG4gIHBhZGRpbmc6IDA7XG5gXG5cbmNvbnN0IERFRkFVTFRfVU5JVF9MSVNUOiBVbml0c1tdID0gWydob3VycycsICdkYXlzJywgJ21vbnRocyddXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXNMYXN0RWxlbWVudD86IGJvb2xlYW5cbiAgcHJvZHVjdHNDYWxsYmFjaz86IHtcbiAgICBhZGQ6IChwcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgICByZW1vdmU6IChwcm9kdWN0OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gIH1cbiAgaXRlcmF0aW9uPzogSXRlcmF0aW9uXG4gIGRpc2NvdW50PzogbnVtYmVyXG59XG5cbmNvbnN0IERlc2NyaXB0aW9uQ29tcG9uZW50ID0gbWVtbyhcbiAgKHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBsb2NhbGVzLFxuICB9OiB7XG4gICAgZGVzY3JpcHRpb246IFJlYWN0Tm9kZVxuICAgIGxvY2FsZXM6IFJlY29yZDxrZXlvZiB0eXBlb2YgRXN0aW1hdGVDb3N0TG9jYWxlcywgc3RyaW5nPlxuICB9KSA9PlxuICAgIGRlc2NyaXB0aW9uID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGRlc2NyaXB0aW9uID09PSAnc3RyaW5nJyA/IChcbiAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgIHtkZXNjcmlwdGlvbiB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmRlc2NyaXB0aW9uJ119XG4gICAgICA8L1RleHQ+XG4gICAgKSA6IChcbiAgICAgIGRlc2NyaXB0aW9uXG4gICAgKSxcbilcblxuY29uc3QgVGl0bGVDb21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBsb2NhbGVzOiBSZXF1aXJlZDxDb21wb25lbnRQcm9wczx0eXBlb2YgRXN0aW1hdGVDb3N0Q29udGVudD5bJ2xvY2FsZXMnXT5cbiAgfSkgPT4gKFxuICAgIDxUaXRsZT5cbiAgICAgIDxTdHlsZWRDYWxjdWxhdG9ySWNvbiBzZW50aW1lbnQ9XCJwcmltYXJ5XCIgc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICB7bG9jYWxlcz8uWydlc3RpbWF0ZS5jb3N0LmxhYmVsJ119XG4gICAgPC9UaXRsZT5cbiAgKSxcbilcblxuZXhwb3J0IGNvbnN0IEVzdGltYXRlQ29zdENvbnRlbnQgPSAoe1xuICBkZXNjcmlwdGlvbixcbiAgYWxlcnQsXG4gIGFsZXJ0VGl0bGUsXG4gIGFsZXJ0VmFyaWFudCA9ICd3YXJuaW5nJyxcbiAgZGVmYXVsdFRpbWVVbml0ID0gJ2hvdXJzJyxcbiAgdGltZVVuaXRzID0gREVGQVVMVF9VTklUX0xJU1QsXG4gIGhpZGVPdmVybGF5ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5TGVmdCA9IGZhbHNlLFxuICBkaXNhYmxlT3ZlcmxheVJpZ2h0ID0gZmFsc2UsXG4gIGhpZGVUaW1lVW5pdCA9IGZhbHNlLFxuICBoaWRlVG90YWwgPSBmYWxzZSxcbiAgaGlkZUhvdXJseVByaWNlT25Ub3RhbCA9IGZhbHNlLFxuICBkaXNjb3VudCA9IDAsXG4gIE92ZXJsYXlSaWdodCxcbiAgT3ZlcmxheUxlZnQsXG4gIGlzQmV0YSA9IGZhbHNlLFxuICBjb21taXRtZW50RmVlcyxcbiAgY29tbWl0bWVudEZlZXNDb250ZW50LFxuICBtb250aGx5RmVlcyxcbiAgbW9udGhseUZlZXNMYWJlbCxcbiAgbW9udGhseUZlZXNDb250ZW50LFxuICBvdmVybGF5VW5pdCA9ICdob3VycycsXG4gIGNoaWxkcmVuID0gbnVsbCxcbiAgbG9jYWxlcyA9IEVzdGltYXRlQ29zdExvY2FsZXMsXG4gIG92ZXJsYXlNYXJnaW4sXG4gIG9uVG90YWxQcmljZUNoYW5nZSxcbn06IEVzdGltYXRlQ29zdFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuICBjb25zdCBbcmVmLCBpblZpZXddID0gdXNlSW5WaWV3KClcbiAgY29uc3QgW3Byb2R1Y3RzLCBzZXRQcm9kdWN0c10gPSB1c2VTdGF0ZTxFc3RpbWF0ZVByb2R1Y3RbXT4oW10pIC8vIHByb2R1Y3QgaXMgdXNlZCB0byBzdG9yZSBlYWNoIGl0ZW1zIHdpdGggdGhlaXIgcHJpY2UgYW5kIGFtb3VudFxuICBjb25zdCBbdG90YWxQcmljZSwgc2V0VG90YWxQcmljZV0gPSB1c2VTdGF0ZSh7XG4gICAgaG91cmx5OiAwLFxuICAgIG1heEhvdXJseTogMCxcbiAgICBtYXhPdmVybGF5SG91cmx5OiAwLFxuICAgIG1heFRvdGFsOiAwLFxuICAgIG92ZXJsYXlIb3VybHk6IDAsXG4gICAgdG90YWw6IDAsXG4gIH0pXG4gIGNvbnN0IFtpdGVyYXRpb24sIHNldEl0ZXJhdGlvbl0gPSB1c2VTdGF0ZTxJdGVyYXRpb24+KHtcbiAgICB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJyxcbiAgICB2YWx1ZTogMSxcbiAgfSlcblxuICBjb25zdCBbaXNMb25nRnJhY3Rpb25EaWdpdHMsIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBwcm92aWRlclZhbHVlID0gdXNlTWVtbygoKSA9PiAoeyBpc092ZXJsYXk6IGZhbHNlIH0pLCBbXSlcblxuICBjb25zdCB0b3RhbFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UudG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UudG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UudG90YWxdLFxuICApXG5cbiAgY29uc3QgdG90YWxNYXhWYWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGZvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heFRvdGFsIDwgMCA/IDAgOiB0b3RhbFByaWNlLm1heFRvdGFsLCB7XG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmdbaXRlcmF0aW9uLnVuaXRdXG4gICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uLnVuaXRdLFxuICAgICAgfSksXG4gICAgW2Zvcm1hdE51bWJlciwgaXNMb25nRnJhY3Rpb25EaWdpdHMsIGl0ZXJhdGlvbi51bml0LCB0b3RhbFByaWNlLm1heFRvdGFsXSxcbiAgKVxuXG4gIGNvbnN0IHByb2R1Y3RzQ2FsbGJhY2sgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBhZGQ6IChuZXdQcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHtcbiAgICAgICAgc2V0UHJvZHVjdHModG90YWwgPT4ge1xuICAgICAgICAgIGlmICh0b3RhbC5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5pZCA9PT0gbmV3UHJvZHVjdC5pZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0b3RhbC5tYXAocHJvZHVjdCA9PlxuICAgICAgICAgICAgICBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkID8gbmV3UHJvZHVjdCA6IHByb2R1Y3QsXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFsuLi50b3RhbCwgbmV3UHJvZHVjdF1cbiAgICAgICAgfSlcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogKHsgaWQgfTogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB0b3RhbC5maWx0ZXIocHJvZHVjdCA9PiBwcm9kdWN0LmlkICE9PSBpZCkpXG4gICAgICB9LFxuICAgIH0pLFxuICAgIFtzZXRQcm9kdWN0c10sXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIHRoaXMgdmFyaWFibGUgY2hlY2sgaWYgdGhlcmUgaXMgYSBtYXhBbW91bnQgaW4gZWFjaCBwcm9kdWN0XG4gICAgLy8gaWYgbm90IHdlIGRvIG5vdCBuZWVkIHRvIGNhbGN1bGF0ZSBtYXhUb3RhbCwgbWF4SG91cmx5LCBtYXhPdmVybGF5SG91cmx5XG4gICAgY29uc3QgaXNNYXhBbW91bnRJblByb2R1Y3RzID0gcHJvZHVjdHMuZmluZChwcm9kdWN0ID0+IHByb2R1Y3QubWF4QW1vdW50KVxuICAgIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzKFxuICAgICAgISFwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5sb25nRnJhY3Rpb25EaWdpdHMpLFxuICAgIClcbiAgICBzZXRUb3RhbFByaWNlKHtcbiAgICAgIGhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgbWF4SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgJiYgcHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApLFxuXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4T3ZlcmxheUhvdXJseTogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QubWF4QW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4VG90YWw6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyArXG4gICAgICAgICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICAgICAgICBhbW91bnQ6IHByb2R1Y3QubWF4QW1vdW50IHx8IHByb2R1Y3QuYW1vdW50LCAvLyBOb3QgYWxsIHByb2R1Y3RzIGhhdmUgbWF4QW1vdW50LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGJvdGhcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICAgIG92ZXJsYXlIb3VybHk6IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICBhY2MgK1xuICAgICAgICAgIChwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0LmFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCkpLFxuICAgICAgICAwLFxuICAgICAgKSxcbiAgICAgIHRvdGFsOiAhaGlkZVRvdGFsXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5hbW91bnQsXG4gICAgICAgICAgICAgICAgYW1vdW50RnJlZTogcHJvZHVjdC5hbW91bnRGcmVlLFxuICAgICAgICAgICAgICAgIGRpc2NvdW50OiBwcm9kdWN0LmRpc2NvdW50LFxuICAgICAgICAgICAgICAgIHByaWNlOiBwcm9kdWN0LnByaWNlLFxuICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAxIDogaXRlcmF0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgIHRpbWVVbml0OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IGl0ZXJhdGlvbi51bml0LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgfSlcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2U/Lih7XG4gICAgICB0b3RhbDogdG90YWxQcmljZS50b3RhbCxcbiAgICAgIHRvdGFsTWF4OiB0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IHRvdGFsUHJpY2UubWF4VG90YWwgOiB1bmRlZmluZWQsXG4gICAgfSlcbiAgfSwgW1xuICAgIGhpZGVUb3RhbCxcbiAgICBwcm9kdWN0cyxcbiAgICBpdGVyYXRpb24sXG4gICAgc2V0VG90YWxQcmljZSxcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2UsXG4gICAgdG90YWxQcmljZS50b3RhbCxcbiAgICB0b3RhbFByaWNlLm1heFRvdGFsLFxuICAgIHRvdGFsVmFsdWUsXG4gICAgdG90YWxNYXhWYWx1ZSxcbiAgXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGhpZGVUaW1lVW5pdCAmJlxuICAgICAgKGl0ZXJhdGlvbi52YWx1ZSA+IDEgfHwgaXRlcmF0aW9uLnVuaXQgIT09IChkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJykpXG4gICAgKSB7XG4gICAgICBzZXRJdGVyYXRpb24oeyB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJywgdmFsdWU6IDEgfSlcbiAgICB9XG4gIH0sIFtoaWRlVGltZVVuaXQsIGl0ZXJhdGlvbiwgZGVmYXVsdFRpbWVVbml0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgeyFoaWRlT3ZlcmxheSA/IChcbiAgICAgICAgPE92ZXJsYXlDb21wb25lbnRcbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheUxlZnQ9e2Rpc2FibGVPdmVybGF5TGVmdH1cbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheVJpZ2h0PXtkaXNhYmxlT3ZlcmxheVJpZ2h0fVxuICAgICAgICAgIGRpc2NvdW50PXtkaXNjb3VudH1cbiAgICAgICAgICBpblZpZXc9e2luVmlld31cbiAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICBPdmVybGF5TGVmdD17T3ZlcmxheUxlZnR9XG4gICAgICAgICAgT3ZlcmxheVJpZ2h0PXtPdmVybGF5UmlnaHR9XG4gICAgICAgICAgb3ZlcmxheU1hcmdpbj17b3ZlcmxheU1hcmdpbn1cbiAgICAgICAgICB0b3RhbFByaWNlPXt0b3RhbFByaWNlfVxuICAgICAgICAgIHVuaXQ9e292ZXJsYXlVbml0ID8/ICdob3Vycyd9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvT3ZlcmxheUNvbXBvbmVudD5cbiAgICAgICkgOiBudWxsfVxuICAgICAge2Rlc2NyaXB0aW9uID09PSBmYWxzZSA/IG51bGwgOiAoXG4gICAgICAgIDxEZXNjcmlwdGlvbkNvbXBvbmVudCBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICApfVxuICAgICAge2FsZXJ0ID8gKFxuICAgICAgICA8QWxlcnQgc2VudGltZW50PXthbGVydFZhcmlhbnR9IHRpdGxlPXthbGVydFRpdGxlfT5cbiAgICAgICAgICB7YWxlcnR9XG4gICAgICAgIDwvQWxlcnQ+XG4gICAgICApIDogbnVsbH1cbiAgICAgIDxPdmVybGF5Q29udGV4dFByb3ZpZGVyIHZhbHVlPXtwcm92aWRlclZhbHVlfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICB7Y2hpbGRyZW4gPyAoXG4gICAgICAgICAgICA8U3R5bGVkVGFibGVcbiAgICAgICAgICAgICAgY2VsbFBhZGRpbmc9XCIwXCJcbiAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9XCIwXCJcbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzdW1tYXJ5XCJcbiAgICAgICAgICAgICAgbm9Ub3RhbD17aGlkZVRvdGFsfVxuICAgICAgICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgeyFoaWRlVGltZVVuaXQgPyAoXG4gICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpdGxlQ29tcG9uZW50IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEN1c3RvbVVuaXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGltZVVuaXQ9e2RlZmF1bHRUaW1lVW5pdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlcmF0aW9uPXtpdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldEl0ZXJhdGlvbj17c2V0SXRlcmF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdHM9e3RpbWVVbml0c31cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9UaW1lQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAge0NoaWxkcmVuLm1hcChjaGlsZHJlbiwgKGNoaWxkLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgIGlzVmFsaWRFbGVtZW50PEV4dHJhUHJvcHM+KGNoaWxkKVxuICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBkaXNjb3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudD86IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudDogaW5kZXggPT09IENoaWxkcmVuLmNvdW50KGNoaWxkcmVuKSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgIDwvU3R5bGVkVGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgeyFoaWRlVG90YWwgPyAoXG4gICAgICAgICAgICA8RW1wdHlUYWJsZSBjZWxsUGFkZGluZz1cIjBcIiBjZWxsU3BhY2luZz1cIjBcIj5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgIDxFbXB0eUNlbGwgYXJpYS1sYWJlbD1cImNvbnRyb2xcIiAvPlxuICAgICAgICAgICAgICAgICAgPFRvdGFsUHJpY2VDZWxsIGhhc0JvcmRlcj17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICB7aXNCZXRhID8gKFxuICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZUJldGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvbmc9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLmxlbmd0aCA+IDI1XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtgJHtkaXNjb3VudCA+IDAgPyBkaXNjb3VudCAqIDEwMCA6ICcnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5iZXRhLiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0JhZGdlQmV0YT5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgYXM9XCJoM1wiXG4gICAgICAgICAgICAgICAgICAgICAgaXNCZXRhPXtpc0JldGF9XG4gICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IGAgLSAke3RvdGFsTWF4VmFsdWV9YCA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0PlxuICAgICAgICAgICAgICAgICAgICB7aGlkZUhvdXJseVByaWNlT25Ub3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS5ob3VybHkgIT09IHRvdGFsUHJpY2UudG90YWwgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS50b3RhbCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPFJpZ2h0QWxpZ25lZFRleHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxMaW5lVGhyb3VnaFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLmhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxQcmljZS5tYXhIb3VybHkgPiAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIodG90YWxQcmljZS5tYXhIb3VybHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzLmhvdXJzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbGBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgICA8L1JpZ2h0QWxpZ25lZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9Ub3RhbFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9FbXB0eVRhYmxlPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtjb21taXRtZW50RmVlcyAhPT0gdW5kZWZpbmVkIHx8IG1vbnRobHlGZWVzICE9PSB1bmRlZmluZWQgPyAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICA8RmVlc1RleHQgYXM9XCJoM1wiIHZhcmlhbnQ9XCJoZWFkaW5nU21hbGxcIj5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5mZWVzLiR7XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXMgPyAnb25lVGltZScgOiAnbW9udGhseSdcbiAgICAgICAgICAgICAgICAgICAgfS50aXRsZWBcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvRmVlc1RleHQ+XG4gICAgICAgICAgICAgIDxTdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgPEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICAgID8gbG9jYWxlc1snZXN0aW1hdGUuY29zdC5mZWVzLmNvbW1pdG1lbnQnXVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0xhYmVsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgcHJpY2U9e2NvbW1pdG1lbnRGZWVzIHx8IG1vbnRobHlGZWVzfVxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPXt7XG4gICAgICAgICAgICAgICAgICAgICAgYWRkOiAoKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAgICAgICByZW1vdmU6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7Y29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICA/IGNvbW1pdG1lbnRGZWVzQ29udGVudFxuICAgICAgICAgICAgICAgICAgICAgIDogbW9udGhseUZlZXNDb250ZW50fVxuICAgICAgICAgICAgICAgICAgPC9JdGVtPlxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgIDwvU3R5bGVkRmVlc1RhYmxlPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9PdmVybGF5Q29udGV4dFByb3ZpZGVyPlxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */",
53
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
54
- });
55
- const StyledCalculatorIcon = /* @__PURE__ */ _styled__default.default(icons.CalculatorIcon, process.env.NODE_ENV === "production" ? {
56
- target: "excc3v71"
57
- } : {
58
- target: "excc3v71",
59
- label: "StyledCalculatorIcon"
60
- })("margin-right:", ({
61
- theme
62
- }) => theme.space["1"], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThEbUQiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvcGx1cy9zcmMvY29tcG9uZW50cy9Fc3RpbWF0ZUNvc3QvRXN0aW1hdGVDb3N0Q29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBDYWxjdWxhdG9ySWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEFsZXJ0LCBTdGFjaywgVGV4dCB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlSW5WaWV3IH0gZnJvbSAncmVhY3QtaW50ZXJzZWN0aW9uLW9ic2VydmVyJ1xuaW1wb3J0IHsgQ3VzdG9tVW5pdElucHV0IH0gZnJvbSAnLi9Db21wb25lbnRzL0N1c3RvbVVuaXRJbnB1dCdcbmltcG9ydCB7IEl0ZW0gfSBmcm9tICcuL0NvbXBvbmVudHMvSXRlbSdcbmltcG9ydCB7IExpbmVUaHJvdWdoIH0gZnJvbSAnLi9Db21wb25lbnRzL0xpbmVUaHJvdWdoJ1xuaW1wb3J0IHtcbiAgQmFkZ2VCZXRhLFxuICBDZWxsLFxuICBFbXB0eUNlbGwsXG4gIEVtcHR5VGFibGUsXG4gIFByaWNlQ29sLFxuICBwcmljZUNlbGwsXG4gIFN0eWxlZEZlZXNUYWJsZSxcbiAgU3R5bGVkVGFibGUsXG4gIFRpbWVDZWxsLFxuICBUaXRsZSxcbiAgVG90YWxQcmljZUNlbGwsXG59IGZyb20gJy4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQgeyBtYXhpbXVtRnJhY3Rpb25EaWdpdHMsIG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcgfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB7IHVzZUVzdGltYXRlQ29zdCB9IGZyb20gJy4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4vaGVscGVyJ1xuaW1wb3J0IEVzdGltYXRlQ29zdExvY2FsZXMgZnJvbSAnLi9sb2NhbGVzL2VuJ1xuaW1wb3J0IHsgT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vT3ZlcmxheUNvbXBvbmVudCdcbmltcG9ydCB7IE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgfSBmcm9tICcuL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZUNvc3RQcm9wcyxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBGZWVzVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMyddfTtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIGlzQmV0YT86IGJvb2xlYW5cbn0+YFxuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgJHsoeyBpc0JldGEsIHRoZW1lIH0pID0+XG4gICAgaXNCZXRhID8gYG1hcmdpbi1sZWZ0OiAke3RoZW1lLnNwYWNlWycyJ119O2AgOiBudWxsfVxuYFxuXG5jb25zdCBSaWdodEFsaWduZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkQ2FsY3VsYXRvckljb24gPSBzdHlsZWQoQ2FsY3VsYXRvckljb24pYFxuICBtYXJnaW4tcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IFN0eWxlZFByaWNlQ2VsbCA9IHN0eWxlZChDZWxsLndpdGhDb21wb25lbnQoJ3RoJykpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG4gIHBhZGRpbmc6IDA7XG5gXG5cbmNvbnN0IERFRkFVTFRfVU5JVF9MSVNUOiBVbml0c1tdID0gWydob3VycycsICdkYXlzJywgJ21vbnRocyddXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXNMYXN0RWxlbWVudD86IGJvb2xlYW5cbiAgcHJvZHVjdHNDYWxsYmFjaz86IHtcbiAgICBhZGQ6IChwcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgICByZW1vdmU6IChwcm9kdWN0OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gIH1cbiAgaXRlcmF0aW9uPzogSXRlcmF0aW9uXG4gIGRpc2NvdW50PzogbnVtYmVyXG59XG5cbmNvbnN0IERlc2NyaXB0aW9uQ29tcG9uZW50ID0gbWVtbyhcbiAgKHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBsb2NhbGVzLFxuICB9OiB7XG4gICAgZGVzY3JpcHRpb246IFJlYWN0Tm9kZVxuICAgIGxvY2FsZXM6IFJlY29yZDxrZXlvZiB0eXBlb2YgRXN0aW1hdGVDb3N0TG9jYWxlcywgc3RyaW5nPlxuICB9KSA9PlxuICAgIGRlc2NyaXB0aW9uID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGRlc2NyaXB0aW9uID09PSAnc3RyaW5nJyA/IChcbiAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgIHtkZXNjcmlwdGlvbiB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmRlc2NyaXB0aW9uJ119XG4gICAgICA8L1RleHQ+XG4gICAgKSA6IChcbiAgICAgIGRlc2NyaXB0aW9uXG4gICAgKSxcbilcblxuY29uc3QgVGl0bGVDb21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBsb2NhbGVzOiBSZXF1aXJlZDxDb21wb25lbnRQcm9wczx0eXBlb2YgRXN0aW1hdGVDb3N0Q29udGVudD5bJ2xvY2FsZXMnXT5cbiAgfSkgPT4gKFxuICAgIDxUaXRsZT5cbiAgICAgIDxTdHlsZWRDYWxjdWxhdG9ySWNvbiBzZW50aW1lbnQ9XCJwcmltYXJ5XCIgc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICB7bG9jYWxlcz8uWydlc3RpbWF0ZS5jb3N0LmxhYmVsJ119XG4gICAgPC9UaXRsZT5cbiAgKSxcbilcblxuZXhwb3J0IGNvbnN0IEVzdGltYXRlQ29zdENvbnRlbnQgPSAoe1xuICBkZXNjcmlwdGlvbixcbiAgYWxlcnQsXG4gIGFsZXJ0VGl0bGUsXG4gIGFsZXJ0VmFyaWFudCA9ICd3YXJuaW5nJyxcbiAgZGVmYXVsdFRpbWVVbml0ID0gJ2hvdXJzJyxcbiAgdGltZVVuaXRzID0gREVGQVVMVF9VTklUX0xJU1QsXG4gIGhpZGVPdmVybGF5ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5TGVmdCA9IGZhbHNlLFxuICBkaXNhYmxlT3ZlcmxheVJpZ2h0ID0gZmFsc2UsXG4gIGhpZGVUaW1lVW5pdCA9IGZhbHNlLFxuICBoaWRlVG90YWwgPSBmYWxzZSxcbiAgaGlkZUhvdXJseVByaWNlT25Ub3RhbCA9IGZhbHNlLFxuICBkaXNjb3VudCA9IDAsXG4gIE92ZXJsYXlSaWdodCxcbiAgT3ZlcmxheUxlZnQsXG4gIGlzQmV0YSA9IGZhbHNlLFxuICBjb21taXRtZW50RmVlcyxcbiAgY29tbWl0bWVudEZlZXNDb250ZW50LFxuICBtb250aGx5RmVlcyxcbiAgbW9udGhseUZlZXNMYWJlbCxcbiAgbW9udGhseUZlZXNDb250ZW50LFxuICBvdmVybGF5VW5pdCA9ICdob3VycycsXG4gIGNoaWxkcmVuID0gbnVsbCxcbiAgbG9jYWxlcyA9IEVzdGltYXRlQ29zdExvY2FsZXMsXG4gIG92ZXJsYXlNYXJnaW4sXG4gIG9uVG90YWxQcmljZUNoYW5nZSxcbn06IEVzdGltYXRlQ29zdFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuICBjb25zdCBbcmVmLCBpblZpZXddID0gdXNlSW5WaWV3KClcbiAgY29uc3QgW3Byb2R1Y3RzLCBzZXRQcm9kdWN0c10gPSB1c2VTdGF0ZTxFc3RpbWF0ZVByb2R1Y3RbXT4oW10pIC8vIHByb2R1Y3QgaXMgdXNlZCB0byBzdG9yZSBlYWNoIGl0ZW1zIHdpdGggdGhlaXIgcHJpY2UgYW5kIGFtb3VudFxuICBjb25zdCBbdG90YWxQcmljZSwgc2V0VG90YWxQcmljZV0gPSB1c2VTdGF0ZSh7XG4gICAgaG91cmx5OiAwLFxuICAgIG1heEhvdXJseTogMCxcbiAgICBtYXhPdmVybGF5SG91cmx5OiAwLFxuICAgIG1heFRvdGFsOiAwLFxuICAgIG92ZXJsYXlIb3VybHk6IDAsXG4gICAgdG90YWw6IDAsXG4gIH0pXG4gIGNvbnN0IFtpdGVyYXRpb24sIHNldEl0ZXJhdGlvbl0gPSB1c2VTdGF0ZTxJdGVyYXRpb24+KHtcbiAgICB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJyxcbiAgICB2YWx1ZTogMSxcbiAgfSlcblxuICBjb25zdCBbaXNMb25nRnJhY3Rpb25EaWdpdHMsIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBwcm92aWRlclZhbHVlID0gdXNlTWVtbygoKSA9PiAoeyBpc092ZXJsYXk6IGZhbHNlIH0pLCBbXSlcblxuICBjb25zdCB0b3RhbFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UudG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UudG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UudG90YWxdLFxuICApXG5cbiAgY29uc3QgdG90YWxNYXhWYWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGZvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heFRvdGFsIDwgMCA/IDAgOiB0b3RhbFByaWNlLm1heFRvdGFsLCB7XG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmdbaXRlcmF0aW9uLnVuaXRdXG4gICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uLnVuaXRdLFxuICAgICAgfSksXG4gICAgW2Zvcm1hdE51bWJlciwgaXNMb25nRnJhY3Rpb25EaWdpdHMsIGl0ZXJhdGlvbi51bml0LCB0b3RhbFByaWNlLm1heFRvdGFsXSxcbiAgKVxuXG4gIGNvbnN0IHByb2R1Y3RzQ2FsbGJhY2sgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBhZGQ6IChuZXdQcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHtcbiAgICAgICAgc2V0UHJvZHVjdHModG90YWwgPT4ge1xuICAgICAgICAgIGlmICh0b3RhbC5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5pZCA9PT0gbmV3UHJvZHVjdC5pZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0b3RhbC5tYXAocHJvZHVjdCA9PlxuICAgICAgICAgICAgICBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkID8gbmV3UHJvZHVjdCA6IHByb2R1Y3QsXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFsuLi50b3RhbCwgbmV3UHJvZHVjdF1cbiAgICAgICAgfSlcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogKHsgaWQgfTogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB0b3RhbC5maWx0ZXIocHJvZHVjdCA9PiBwcm9kdWN0LmlkICE9PSBpZCkpXG4gICAgICB9LFxuICAgIH0pLFxuICAgIFtzZXRQcm9kdWN0c10sXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIHRoaXMgdmFyaWFibGUgY2hlY2sgaWYgdGhlcmUgaXMgYSBtYXhBbW91bnQgaW4gZWFjaCBwcm9kdWN0XG4gICAgLy8gaWYgbm90IHdlIGRvIG5vdCBuZWVkIHRvIGNhbGN1bGF0ZSBtYXhUb3RhbCwgbWF4SG91cmx5LCBtYXhPdmVybGF5SG91cmx5XG4gICAgY29uc3QgaXNNYXhBbW91bnRJblByb2R1Y3RzID0gcHJvZHVjdHMuZmluZChwcm9kdWN0ID0+IHByb2R1Y3QubWF4QW1vdW50KVxuICAgIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzKFxuICAgICAgISFwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5sb25nRnJhY3Rpb25EaWdpdHMpLFxuICAgIClcbiAgICBzZXRUb3RhbFByaWNlKHtcbiAgICAgIGhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgbWF4SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgJiYgcHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApLFxuXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4T3ZlcmxheUhvdXJseTogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QubWF4QW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4VG90YWw6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyArXG4gICAgICAgICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICAgICAgICBhbW91bnQ6IHByb2R1Y3QubWF4QW1vdW50IHx8IHByb2R1Y3QuYW1vdW50LCAvLyBOb3QgYWxsIHByb2R1Y3RzIGhhdmUgbWF4QW1vdW50LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGJvdGhcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICAgIG92ZXJsYXlIb3VybHk6IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICBhY2MgK1xuICAgICAgICAgIChwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0LmFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCkpLFxuICAgICAgICAwLFxuICAgICAgKSxcbiAgICAgIHRvdGFsOiAhaGlkZVRvdGFsXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5hbW91bnQsXG4gICAgICAgICAgICAgICAgYW1vdW50RnJlZTogcHJvZHVjdC5hbW91bnRGcmVlLFxuICAgICAgICAgICAgICAgIGRpc2NvdW50OiBwcm9kdWN0LmRpc2NvdW50LFxuICAgICAgICAgICAgICAgIHByaWNlOiBwcm9kdWN0LnByaWNlLFxuICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAxIDogaXRlcmF0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgIHRpbWVVbml0OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IGl0ZXJhdGlvbi51bml0LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgfSlcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2U/Lih7XG4gICAgICB0b3RhbDogdG90YWxQcmljZS50b3RhbCxcbiAgICAgIHRvdGFsTWF4OiB0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IHRvdGFsUHJpY2UubWF4VG90YWwgOiB1bmRlZmluZWQsXG4gICAgfSlcbiAgfSwgW1xuICAgIGhpZGVUb3RhbCxcbiAgICBwcm9kdWN0cyxcbiAgICBpdGVyYXRpb24sXG4gICAgc2V0VG90YWxQcmljZSxcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2UsXG4gICAgdG90YWxQcmljZS50b3RhbCxcbiAgICB0b3RhbFByaWNlLm1heFRvdGFsLFxuICAgIHRvdGFsVmFsdWUsXG4gICAgdG90YWxNYXhWYWx1ZSxcbiAgXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGhpZGVUaW1lVW5pdCAmJlxuICAgICAgKGl0ZXJhdGlvbi52YWx1ZSA+IDEgfHwgaXRlcmF0aW9uLnVuaXQgIT09IChkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJykpXG4gICAgKSB7XG4gICAgICBzZXRJdGVyYXRpb24oeyB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJywgdmFsdWU6IDEgfSlcbiAgICB9XG4gIH0sIFtoaWRlVGltZVVuaXQsIGl0ZXJhdGlvbiwgZGVmYXVsdFRpbWVVbml0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgeyFoaWRlT3ZlcmxheSA/IChcbiAgICAgICAgPE92ZXJsYXlDb21wb25lbnRcbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheUxlZnQ9e2Rpc2FibGVPdmVybGF5TGVmdH1cbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheVJpZ2h0PXtkaXNhYmxlT3ZlcmxheVJpZ2h0fVxuICAgICAgICAgIGRpc2NvdW50PXtkaXNjb3VudH1cbiAgICAgICAgICBpblZpZXc9e2luVmlld31cbiAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICBPdmVybGF5TGVmdD17T3ZlcmxheUxlZnR9XG4gICAgICAgICAgT3ZlcmxheVJpZ2h0PXtPdmVybGF5UmlnaHR9XG4gICAgICAgICAgb3ZlcmxheU1hcmdpbj17b3ZlcmxheU1hcmdpbn1cbiAgICAgICAgICB0b3RhbFByaWNlPXt0b3RhbFByaWNlfVxuICAgICAgICAgIHVuaXQ9e292ZXJsYXlVbml0ID8/ICdob3Vycyd9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvT3ZlcmxheUNvbXBvbmVudD5cbiAgICAgICkgOiBudWxsfVxuICAgICAge2Rlc2NyaXB0aW9uID09PSBmYWxzZSA/IG51bGwgOiAoXG4gICAgICAgIDxEZXNjcmlwdGlvbkNvbXBvbmVudCBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICApfVxuICAgICAge2FsZXJ0ID8gKFxuICAgICAgICA8QWxlcnQgc2VudGltZW50PXthbGVydFZhcmlhbnR9IHRpdGxlPXthbGVydFRpdGxlfT5cbiAgICAgICAgICB7YWxlcnR9XG4gICAgICAgIDwvQWxlcnQ+XG4gICAgICApIDogbnVsbH1cbiAgICAgIDxPdmVybGF5Q29udGV4dFByb3ZpZGVyIHZhbHVlPXtwcm92aWRlclZhbHVlfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICB7Y2hpbGRyZW4gPyAoXG4gICAgICAgICAgICA8U3R5bGVkVGFibGVcbiAgICAgICAgICAgICAgY2VsbFBhZGRpbmc9XCIwXCJcbiAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9XCIwXCJcbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzdW1tYXJ5XCJcbiAgICAgICAgICAgICAgbm9Ub3RhbD17aGlkZVRvdGFsfVxuICAgICAgICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgeyFoaWRlVGltZVVuaXQgPyAoXG4gICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpdGxlQ29tcG9uZW50IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEN1c3RvbVVuaXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGltZVVuaXQ9e2RlZmF1bHRUaW1lVW5pdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlcmF0aW9uPXtpdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldEl0ZXJhdGlvbj17c2V0SXRlcmF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdHM9e3RpbWVVbml0c31cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9UaW1lQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAge0NoaWxkcmVuLm1hcChjaGlsZHJlbiwgKGNoaWxkLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgIGlzVmFsaWRFbGVtZW50PEV4dHJhUHJvcHM+KGNoaWxkKVxuICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBkaXNjb3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudD86IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudDogaW5kZXggPT09IENoaWxkcmVuLmNvdW50KGNoaWxkcmVuKSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgIDwvU3R5bGVkVGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgeyFoaWRlVG90YWwgPyAoXG4gICAgICAgICAgICA8RW1wdHlUYWJsZSBjZWxsUGFkZGluZz1cIjBcIiBjZWxsU3BhY2luZz1cIjBcIj5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgIDxFbXB0eUNlbGwgYXJpYS1sYWJlbD1cImNvbnRyb2xcIiAvPlxuICAgICAgICAgICAgICAgICAgPFRvdGFsUHJpY2VDZWxsIGhhc0JvcmRlcj17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICB7aXNCZXRhID8gKFxuICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZUJldGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvbmc9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLmxlbmd0aCA+IDI1XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtgJHtkaXNjb3VudCA+IDAgPyBkaXNjb3VudCAqIDEwMCA6ICcnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5iZXRhLiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0JhZGdlQmV0YT5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgYXM9XCJoM1wiXG4gICAgICAgICAgICAgICAgICAgICAgaXNCZXRhPXtpc0JldGF9XG4gICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IGAgLSAke3RvdGFsTWF4VmFsdWV9YCA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0PlxuICAgICAgICAgICAgICAgICAgICB7aGlkZUhvdXJseVByaWNlT25Ub3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS5ob3VybHkgIT09IHRvdGFsUHJpY2UudG90YWwgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS50b3RhbCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPFJpZ2h0QWxpZ25lZFRleHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxMaW5lVGhyb3VnaFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLmhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxQcmljZS5tYXhIb3VybHkgPiAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIodG90YWxQcmljZS5tYXhIb3VybHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzLmhvdXJzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbGBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgICA8L1JpZ2h0QWxpZ25lZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9Ub3RhbFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9FbXB0eVRhYmxlPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtjb21taXRtZW50RmVlcyAhPT0gdW5kZWZpbmVkIHx8IG1vbnRobHlGZWVzICE9PSB1bmRlZmluZWQgPyAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICA8RmVlc1RleHQgYXM9XCJoM1wiIHZhcmlhbnQ9XCJoZWFkaW5nU21hbGxcIj5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5mZWVzLiR7XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXMgPyAnb25lVGltZScgOiAnbW9udGhseSdcbiAgICAgICAgICAgICAgICAgICAgfS50aXRsZWBcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvRmVlc1RleHQ+XG4gICAgICAgICAgICAgIDxTdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgPEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICAgID8gbG9jYWxlc1snZXN0aW1hdGUuY29zdC5mZWVzLmNvbW1pdG1lbnQnXVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0xhYmVsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgcHJpY2U9e2NvbW1pdG1lbnRGZWVzIHx8IG1vbnRobHlGZWVzfVxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPXt7XG4gICAgICAgICAgICAgICAgICAgICAgYWRkOiAoKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAgICAgICByZW1vdmU6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7Y29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICA/IGNvbW1pdG1lbnRGZWVzQ29udGVudFxuICAgICAgICAgICAgICAgICAgICAgIDogbW9udGhseUZlZXNDb250ZW50fVxuICAgICAgICAgICAgICAgICAgPC9JdGVtPlxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgIDwvU3R5bGVkRmVlc1RhYmxlPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9PdmVybGF5Q29udGV4dFByb3ZpZGVyPlxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */"));
63
- const StyledPriceCell = /* @__PURE__ */ _styled__default.default(componentStyle.Cell.withComponent("th", process.env.NODE_ENV === "production" ? {
64
- target: "excc3v75"
65
- } : {
66
- target: "excc3v75",
67
- label: "StyledPriceCell"
68
- }), process.env.NODE_ENV === "production" ? {
69
- target: "excc3v70"
70
- } : {
71
- target: "excc3v70",
72
- label: "StyledPriceCell"
73
- })(({
74
- theme
75
- }) => componentStyle.priceCell(theme), " padding:0;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtFd0QiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvcGx1cy9zcmMvY29tcG9uZW50cy9Fc3RpbWF0ZUNvc3QvRXN0aW1hdGVDb3N0Q29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBDYWxjdWxhdG9ySWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEFsZXJ0LCBTdGFjaywgVGV4dCB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlSW5WaWV3IH0gZnJvbSAncmVhY3QtaW50ZXJzZWN0aW9uLW9ic2VydmVyJ1xuaW1wb3J0IHsgQ3VzdG9tVW5pdElucHV0IH0gZnJvbSAnLi9Db21wb25lbnRzL0N1c3RvbVVuaXRJbnB1dCdcbmltcG9ydCB7IEl0ZW0gfSBmcm9tICcuL0NvbXBvbmVudHMvSXRlbSdcbmltcG9ydCB7IExpbmVUaHJvdWdoIH0gZnJvbSAnLi9Db21wb25lbnRzL0xpbmVUaHJvdWdoJ1xuaW1wb3J0IHtcbiAgQmFkZ2VCZXRhLFxuICBDZWxsLFxuICBFbXB0eUNlbGwsXG4gIEVtcHR5VGFibGUsXG4gIFByaWNlQ29sLFxuICBwcmljZUNlbGwsXG4gIFN0eWxlZEZlZXNUYWJsZSxcbiAgU3R5bGVkVGFibGUsXG4gIFRpbWVDZWxsLFxuICBUaXRsZSxcbiAgVG90YWxQcmljZUNlbGwsXG59IGZyb20gJy4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQgeyBtYXhpbXVtRnJhY3Rpb25EaWdpdHMsIG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcgfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB7IHVzZUVzdGltYXRlQ29zdCB9IGZyb20gJy4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4vaGVscGVyJ1xuaW1wb3J0IEVzdGltYXRlQ29zdExvY2FsZXMgZnJvbSAnLi9sb2NhbGVzL2VuJ1xuaW1wb3J0IHsgT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vT3ZlcmxheUNvbXBvbmVudCdcbmltcG9ydCB7IE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgfSBmcm9tICcuL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZUNvc3RQcm9wcyxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBGZWVzVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMyddfTtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIGlzQmV0YT86IGJvb2xlYW5cbn0+YFxuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgJHsoeyBpc0JldGEsIHRoZW1lIH0pID0+XG4gICAgaXNCZXRhID8gYG1hcmdpbi1sZWZ0OiAke3RoZW1lLnNwYWNlWycyJ119O2AgOiBudWxsfVxuYFxuXG5jb25zdCBSaWdodEFsaWduZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkQ2FsY3VsYXRvckljb24gPSBzdHlsZWQoQ2FsY3VsYXRvckljb24pYFxuICBtYXJnaW4tcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IFN0eWxlZFByaWNlQ2VsbCA9IHN0eWxlZChDZWxsLndpdGhDb21wb25lbnQoJ3RoJykpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG4gIHBhZGRpbmc6IDA7XG5gXG5cbmNvbnN0IERFRkFVTFRfVU5JVF9MSVNUOiBVbml0c1tdID0gWydob3VycycsICdkYXlzJywgJ21vbnRocyddXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXNMYXN0RWxlbWVudD86IGJvb2xlYW5cbiAgcHJvZHVjdHNDYWxsYmFjaz86IHtcbiAgICBhZGQ6IChwcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgICByZW1vdmU6IChwcm9kdWN0OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gIH1cbiAgaXRlcmF0aW9uPzogSXRlcmF0aW9uXG4gIGRpc2NvdW50PzogbnVtYmVyXG59XG5cbmNvbnN0IERlc2NyaXB0aW9uQ29tcG9uZW50ID0gbWVtbyhcbiAgKHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBsb2NhbGVzLFxuICB9OiB7XG4gICAgZGVzY3JpcHRpb246IFJlYWN0Tm9kZVxuICAgIGxvY2FsZXM6IFJlY29yZDxrZXlvZiB0eXBlb2YgRXN0aW1hdGVDb3N0TG9jYWxlcywgc3RyaW5nPlxuICB9KSA9PlxuICAgIGRlc2NyaXB0aW9uID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGRlc2NyaXB0aW9uID09PSAnc3RyaW5nJyA/IChcbiAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgIHtkZXNjcmlwdGlvbiB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmRlc2NyaXB0aW9uJ119XG4gICAgICA8L1RleHQ+XG4gICAgKSA6IChcbiAgICAgIGRlc2NyaXB0aW9uXG4gICAgKSxcbilcblxuY29uc3QgVGl0bGVDb21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBsb2NhbGVzOiBSZXF1aXJlZDxDb21wb25lbnRQcm9wczx0eXBlb2YgRXN0aW1hdGVDb3N0Q29udGVudD5bJ2xvY2FsZXMnXT5cbiAgfSkgPT4gKFxuICAgIDxUaXRsZT5cbiAgICAgIDxTdHlsZWRDYWxjdWxhdG9ySWNvbiBzZW50aW1lbnQ9XCJwcmltYXJ5XCIgc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICB7bG9jYWxlcz8uWydlc3RpbWF0ZS5jb3N0LmxhYmVsJ119XG4gICAgPC9UaXRsZT5cbiAgKSxcbilcblxuZXhwb3J0IGNvbnN0IEVzdGltYXRlQ29zdENvbnRlbnQgPSAoe1xuICBkZXNjcmlwdGlvbixcbiAgYWxlcnQsXG4gIGFsZXJ0VGl0bGUsXG4gIGFsZXJ0VmFyaWFudCA9ICd3YXJuaW5nJyxcbiAgZGVmYXVsdFRpbWVVbml0ID0gJ2hvdXJzJyxcbiAgdGltZVVuaXRzID0gREVGQVVMVF9VTklUX0xJU1QsXG4gIGhpZGVPdmVybGF5ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5TGVmdCA9IGZhbHNlLFxuICBkaXNhYmxlT3ZlcmxheVJpZ2h0ID0gZmFsc2UsXG4gIGhpZGVUaW1lVW5pdCA9IGZhbHNlLFxuICBoaWRlVG90YWwgPSBmYWxzZSxcbiAgaGlkZUhvdXJseVByaWNlT25Ub3RhbCA9IGZhbHNlLFxuICBkaXNjb3VudCA9IDAsXG4gIE92ZXJsYXlSaWdodCxcbiAgT3ZlcmxheUxlZnQsXG4gIGlzQmV0YSA9IGZhbHNlLFxuICBjb21taXRtZW50RmVlcyxcbiAgY29tbWl0bWVudEZlZXNDb250ZW50LFxuICBtb250aGx5RmVlcyxcbiAgbW9udGhseUZlZXNMYWJlbCxcbiAgbW9udGhseUZlZXNDb250ZW50LFxuICBvdmVybGF5VW5pdCA9ICdob3VycycsXG4gIGNoaWxkcmVuID0gbnVsbCxcbiAgbG9jYWxlcyA9IEVzdGltYXRlQ29zdExvY2FsZXMsXG4gIG92ZXJsYXlNYXJnaW4sXG4gIG9uVG90YWxQcmljZUNoYW5nZSxcbn06IEVzdGltYXRlQ29zdFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuICBjb25zdCBbcmVmLCBpblZpZXddID0gdXNlSW5WaWV3KClcbiAgY29uc3QgW3Byb2R1Y3RzLCBzZXRQcm9kdWN0c10gPSB1c2VTdGF0ZTxFc3RpbWF0ZVByb2R1Y3RbXT4oW10pIC8vIHByb2R1Y3QgaXMgdXNlZCB0byBzdG9yZSBlYWNoIGl0ZW1zIHdpdGggdGhlaXIgcHJpY2UgYW5kIGFtb3VudFxuICBjb25zdCBbdG90YWxQcmljZSwgc2V0VG90YWxQcmljZV0gPSB1c2VTdGF0ZSh7XG4gICAgaG91cmx5OiAwLFxuICAgIG1heEhvdXJseTogMCxcbiAgICBtYXhPdmVybGF5SG91cmx5OiAwLFxuICAgIG1heFRvdGFsOiAwLFxuICAgIG92ZXJsYXlIb3VybHk6IDAsXG4gICAgdG90YWw6IDAsXG4gIH0pXG4gIGNvbnN0IFtpdGVyYXRpb24sIHNldEl0ZXJhdGlvbl0gPSB1c2VTdGF0ZTxJdGVyYXRpb24+KHtcbiAgICB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJyxcbiAgICB2YWx1ZTogMSxcbiAgfSlcblxuICBjb25zdCBbaXNMb25nRnJhY3Rpb25EaWdpdHMsIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBwcm92aWRlclZhbHVlID0gdXNlTWVtbygoKSA9PiAoeyBpc092ZXJsYXk6IGZhbHNlIH0pLCBbXSlcblxuICBjb25zdCB0b3RhbFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UudG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UudG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UudG90YWxdLFxuICApXG5cbiAgY29uc3QgdG90YWxNYXhWYWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGZvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heFRvdGFsIDwgMCA/IDAgOiB0b3RhbFByaWNlLm1heFRvdGFsLCB7XG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmdbaXRlcmF0aW9uLnVuaXRdXG4gICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uLnVuaXRdLFxuICAgICAgfSksXG4gICAgW2Zvcm1hdE51bWJlciwgaXNMb25nRnJhY3Rpb25EaWdpdHMsIGl0ZXJhdGlvbi51bml0LCB0b3RhbFByaWNlLm1heFRvdGFsXSxcbiAgKVxuXG4gIGNvbnN0IHByb2R1Y3RzQ2FsbGJhY2sgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBhZGQ6IChuZXdQcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHtcbiAgICAgICAgc2V0UHJvZHVjdHModG90YWwgPT4ge1xuICAgICAgICAgIGlmICh0b3RhbC5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5pZCA9PT0gbmV3UHJvZHVjdC5pZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0b3RhbC5tYXAocHJvZHVjdCA9PlxuICAgICAgICAgICAgICBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkID8gbmV3UHJvZHVjdCA6IHByb2R1Y3QsXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFsuLi50b3RhbCwgbmV3UHJvZHVjdF1cbiAgICAgICAgfSlcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogKHsgaWQgfTogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB0b3RhbC5maWx0ZXIocHJvZHVjdCA9PiBwcm9kdWN0LmlkICE9PSBpZCkpXG4gICAgICB9LFxuICAgIH0pLFxuICAgIFtzZXRQcm9kdWN0c10sXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIHRoaXMgdmFyaWFibGUgY2hlY2sgaWYgdGhlcmUgaXMgYSBtYXhBbW91bnQgaW4gZWFjaCBwcm9kdWN0XG4gICAgLy8gaWYgbm90IHdlIGRvIG5vdCBuZWVkIHRvIGNhbGN1bGF0ZSBtYXhUb3RhbCwgbWF4SG91cmx5LCBtYXhPdmVybGF5SG91cmx5XG4gICAgY29uc3QgaXNNYXhBbW91bnRJblByb2R1Y3RzID0gcHJvZHVjdHMuZmluZChwcm9kdWN0ID0+IHByb2R1Y3QubWF4QW1vdW50KVxuICAgIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzKFxuICAgICAgISFwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5sb25nRnJhY3Rpb25EaWdpdHMpLFxuICAgIClcbiAgICBzZXRUb3RhbFByaWNlKHtcbiAgICAgIGhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgbWF4SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgJiYgcHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApLFxuXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4T3ZlcmxheUhvdXJseTogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QubWF4QW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4VG90YWw6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyArXG4gICAgICAgICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICAgICAgICBhbW91bnQ6IHByb2R1Y3QubWF4QW1vdW50IHx8IHByb2R1Y3QuYW1vdW50LCAvLyBOb3QgYWxsIHByb2R1Y3RzIGhhdmUgbWF4QW1vdW50LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGJvdGhcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICAgIG92ZXJsYXlIb3VybHk6IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICBhY2MgK1xuICAgICAgICAgIChwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0LmFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCkpLFxuICAgICAgICAwLFxuICAgICAgKSxcbiAgICAgIHRvdGFsOiAhaGlkZVRvdGFsXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5hbW91bnQsXG4gICAgICAgICAgICAgICAgYW1vdW50RnJlZTogcHJvZHVjdC5hbW91bnRGcmVlLFxuICAgICAgICAgICAgICAgIGRpc2NvdW50OiBwcm9kdWN0LmRpc2NvdW50LFxuICAgICAgICAgICAgICAgIHByaWNlOiBwcm9kdWN0LnByaWNlLFxuICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAxIDogaXRlcmF0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgIHRpbWVVbml0OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IGl0ZXJhdGlvbi51bml0LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgfSlcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2U/Lih7XG4gICAgICB0b3RhbDogdG90YWxQcmljZS50b3RhbCxcbiAgICAgIHRvdGFsTWF4OiB0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IHRvdGFsUHJpY2UubWF4VG90YWwgOiB1bmRlZmluZWQsXG4gICAgfSlcbiAgfSwgW1xuICAgIGhpZGVUb3RhbCxcbiAgICBwcm9kdWN0cyxcbiAgICBpdGVyYXRpb24sXG4gICAgc2V0VG90YWxQcmljZSxcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2UsXG4gICAgdG90YWxQcmljZS50b3RhbCxcbiAgICB0b3RhbFByaWNlLm1heFRvdGFsLFxuICAgIHRvdGFsVmFsdWUsXG4gICAgdG90YWxNYXhWYWx1ZSxcbiAgXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGhpZGVUaW1lVW5pdCAmJlxuICAgICAgKGl0ZXJhdGlvbi52YWx1ZSA+IDEgfHwgaXRlcmF0aW9uLnVuaXQgIT09IChkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJykpXG4gICAgKSB7XG4gICAgICBzZXRJdGVyYXRpb24oeyB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJywgdmFsdWU6IDEgfSlcbiAgICB9XG4gIH0sIFtoaWRlVGltZVVuaXQsIGl0ZXJhdGlvbiwgZGVmYXVsdFRpbWVVbml0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgeyFoaWRlT3ZlcmxheSA/IChcbiAgICAgICAgPE92ZXJsYXlDb21wb25lbnRcbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheUxlZnQ9e2Rpc2FibGVPdmVybGF5TGVmdH1cbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheVJpZ2h0PXtkaXNhYmxlT3ZlcmxheVJpZ2h0fVxuICAgICAgICAgIGRpc2NvdW50PXtkaXNjb3VudH1cbiAgICAgICAgICBpblZpZXc9e2luVmlld31cbiAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICBPdmVybGF5TGVmdD17T3ZlcmxheUxlZnR9XG4gICAgICAgICAgT3ZlcmxheVJpZ2h0PXtPdmVybGF5UmlnaHR9XG4gICAgICAgICAgb3ZlcmxheU1hcmdpbj17b3ZlcmxheU1hcmdpbn1cbiAgICAgICAgICB0b3RhbFByaWNlPXt0b3RhbFByaWNlfVxuICAgICAgICAgIHVuaXQ9e292ZXJsYXlVbml0ID8/ICdob3Vycyd9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvT3ZlcmxheUNvbXBvbmVudD5cbiAgICAgICkgOiBudWxsfVxuICAgICAge2Rlc2NyaXB0aW9uID09PSBmYWxzZSA/IG51bGwgOiAoXG4gICAgICAgIDxEZXNjcmlwdGlvbkNvbXBvbmVudCBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICApfVxuICAgICAge2FsZXJ0ID8gKFxuICAgICAgICA8QWxlcnQgc2VudGltZW50PXthbGVydFZhcmlhbnR9IHRpdGxlPXthbGVydFRpdGxlfT5cbiAgICAgICAgICB7YWxlcnR9XG4gICAgICAgIDwvQWxlcnQ+XG4gICAgICApIDogbnVsbH1cbiAgICAgIDxPdmVybGF5Q29udGV4dFByb3ZpZGVyIHZhbHVlPXtwcm92aWRlclZhbHVlfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICB7Y2hpbGRyZW4gPyAoXG4gICAgICAgICAgICA8U3R5bGVkVGFibGVcbiAgICAgICAgICAgICAgY2VsbFBhZGRpbmc9XCIwXCJcbiAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9XCIwXCJcbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzdW1tYXJ5XCJcbiAgICAgICAgICAgICAgbm9Ub3RhbD17aGlkZVRvdGFsfVxuICAgICAgICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgeyFoaWRlVGltZVVuaXQgPyAoXG4gICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpdGxlQ29tcG9uZW50IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEN1c3RvbVVuaXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGltZVVuaXQ9e2RlZmF1bHRUaW1lVW5pdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlcmF0aW9uPXtpdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldEl0ZXJhdGlvbj17c2V0SXRlcmF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdHM9e3RpbWVVbml0c31cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9UaW1lQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAge0NoaWxkcmVuLm1hcChjaGlsZHJlbiwgKGNoaWxkLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgIGlzVmFsaWRFbGVtZW50PEV4dHJhUHJvcHM+KGNoaWxkKVxuICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBkaXNjb3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudD86IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudDogaW5kZXggPT09IENoaWxkcmVuLmNvdW50KGNoaWxkcmVuKSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgIDwvU3R5bGVkVGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgeyFoaWRlVG90YWwgPyAoXG4gICAgICAgICAgICA8RW1wdHlUYWJsZSBjZWxsUGFkZGluZz1cIjBcIiBjZWxsU3BhY2luZz1cIjBcIj5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgIDxFbXB0eUNlbGwgYXJpYS1sYWJlbD1cImNvbnRyb2xcIiAvPlxuICAgICAgICAgICAgICAgICAgPFRvdGFsUHJpY2VDZWxsIGhhc0JvcmRlcj17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICB7aXNCZXRhID8gKFxuICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZUJldGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvbmc9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLmxlbmd0aCA+IDI1XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtgJHtkaXNjb3VudCA+IDAgPyBkaXNjb3VudCAqIDEwMCA6ICcnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5iZXRhLiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0JhZGdlQmV0YT5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgYXM9XCJoM1wiXG4gICAgICAgICAgICAgICAgICAgICAgaXNCZXRhPXtpc0JldGF9XG4gICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IGAgLSAke3RvdGFsTWF4VmFsdWV9YCA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0PlxuICAgICAgICAgICAgICAgICAgICB7aGlkZUhvdXJseVByaWNlT25Ub3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS5ob3VybHkgIT09IHRvdGFsUHJpY2UudG90YWwgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS50b3RhbCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPFJpZ2h0QWxpZ25lZFRleHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxMaW5lVGhyb3VnaFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLmhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxQcmljZS5tYXhIb3VybHkgPiAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIodG90YWxQcmljZS5tYXhIb3VybHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzLmhvdXJzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbGBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgICA8L1JpZ2h0QWxpZ25lZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9Ub3RhbFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9FbXB0eVRhYmxlPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtjb21taXRtZW50RmVlcyAhPT0gdW5kZWZpbmVkIHx8IG1vbnRobHlGZWVzICE9PSB1bmRlZmluZWQgPyAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICA8RmVlc1RleHQgYXM9XCJoM1wiIHZhcmlhbnQ9XCJoZWFkaW5nU21hbGxcIj5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5mZWVzLiR7XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXMgPyAnb25lVGltZScgOiAnbW9udGhseSdcbiAgICAgICAgICAgICAgICAgICAgfS50aXRsZWBcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvRmVlc1RleHQ+XG4gICAgICAgICAgICAgIDxTdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgPEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICAgID8gbG9jYWxlc1snZXN0aW1hdGUuY29zdC5mZWVzLmNvbW1pdG1lbnQnXVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0xhYmVsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgcHJpY2U9e2NvbW1pdG1lbnRGZWVzIHx8IG1vbnRobHlGZWVzfVxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPXt7XG4gICAgICAgICAgICAgICAgICAgICAgYWRkOiAoKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAgICAgICByZW1vdmU6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7Y29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICA/IGNvbW1pdG1lbnRGZWVzQ29udGVudFxuICAgICAgICAgICAgICAgICAgICAgIDogbW9udGhseUZlZXNDb250ZW50fVxuICAgICAgICAgICAgICAgICAgPC9JdGVtPlxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgIDwvU3R5bGVkRmVlc1RhYmxlPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9PdmVybGF5Q29udGV4dFByb3ZpZGVyPlxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */"));
76
- const DEFAULT_UNIT_LIST = ["hours", "days", "months"];
77
- const DescriptionComponent = react.memo(({
78
- description,
79
- locales
80
- }) => description === void 0 || typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(ui.Text, { as: "span", variant: "body", children: description || locales["estimate.cost.description"] }) : description);
81
- const TitleComponent = react.memo(({
82
- locales
83
- }) => /* @__PURE__ */ jsxRuntime.jsxs(componentStyle.Title, { children: [
84
- /* @__PURE__ */ jsxRuntime.jsx(StyledCalculatorIcon, { sentiment: "primary", size: "medium" }),
85
- locales?.["estimate.cost.label"]
86
- ] }));
87
- const EstimateCostContent = ({
88
- description,
89
- alert,
90
- alertTitle,
91
- alertVariant = "warning",
92
- defaultTimeUnit = "hours",
93
- timeUnits = DEFAULT_UNIT_LIST,
94
- hideOverlay = false,
95
- disableOverlayLeft = false,
96
- disableOverlayRight = false,
97
- hideTimeUnit = false,
98
- hideTotal = false,
99
- hideHourlyPriceOnTotal = false,
100
- discount = 0,
101
- OverlayRight,
102
- OverlayLeft,
103
- isBeta = false,
104
- commitmentFees,
105
- commitmentFeesContent,
106
- monthlyFees,
107
- monthlyFeesLabel,
108
- monthlyFeesContent,
109
- overlayUnit = "hours",
110
- children = null,
111
- locales = en,
112
- overlayMargin,
113
- onTotalPriceChange
114
- }) => {
115
- const {
116
- formatNumber
117
- } = EstimateCostProvider.useEstimateCost();
118
- const [ref, inView] = reactIntersectionObserver.useInView();
119
- const [products, setProducts] = react.useState([]);
120
- const [totalPrice, setTotalPrice] = react.useState({
121
- hourly: 0,
122
- maxHourly: 0,
123
- maxOverlayHourly: 0,
124
- maxTotal: 0,
125
- overlayHourly: 0,
126
- total: 0
127
- });
128
- const [iteration, setIteration] = react.useState({
129
- unit: defaultTimeUnit ?? "hours",
130
- value: 1
131
- });
132
- const [isLongFractionDigits, setIsLongFractionDigits] = react.useState(false);
133
- const providerValue = react.useMemo(() => ({
134
- isOverlay: false
135
- }), []);
136
- const totalValue = react.useMemo(() => formatNumber(totalPrice.total < 0 ? 0 : totalPrice.total, {
137
- maximumFractionDigits: isLongFractionDigits ? constants.maximumFractionDigitsLong[iteration.unit] : constants.maximumFractionDigits[iteration.unit]
138
- }), [formatNumber, isLongFractionDigits, iteration.unit, totalPrice.total]);
139
- const totalMaxValue = react.useMemo(() => formatNumber(totalPrice.maxTotal < 0 ? 0 : totalPrice.maxTotal, {
140
- maximumFractionDigits: isLongFractionDigits ? constants.maximumFractionDigitsLong[iteration.unit] : constants.maximumFractionDigits[iteration.unit]
141
- }), [formatNumber, isLongFractionDigits, iteration.unit, totalPrice.maxTotal]);
142
- const productsCallback = react.useMemo(() => ({
143
- add: (newProduct) => {
144
- setProducts((total) => {
145
- if (total.find((product) => product.id === newProduct.id)) {
146
- return total.map((product) => product.id === newProduct.id ? newProduct : product);
147
- }
148
- return [...total, newProduct];
149
- });
150
- },
151
- remove: ({
152
- id
153
- }) => {
154
- setProducts((total) => total.filter((product) => product.id !== id));
155
- }
156
- }), [setProducts]);
157
- react.useEffect(() => {
158
- const isMaxAmountInProducts = products.find((product) => product.maxAmount);
159
- setIsLongFractionDigits(!!products.find((product) => product.longFractionDigits));
160
- setTotalPrice({
161
- hourly: products.reduce((acc, product) => acc + (product.noIteration ? 0 : (product.price - product.price * product.discount) * Math.max(product.amount - product.amountFree, 0)), 0),
162
- maxHourly: isMaxAmountInProducts ? products.reduce((acc, product) => acc && product.noIteration ? 0 : (product.price - product.price * product.discount) * Math.max(product.maxAmount - product.amountFree, 0), 0) : 0,
163
- maxOverlayHourly: isMaxAmountInProducts ? products.reduce((acc, product) => acc + (product.noIteration ? 0 : (product.price - product.price * product.discount) * Math.max(product.maxAmount - product.amountFree, 0)), 0) : 0,
164
- maxTotal: isMaxAmountInProducts ? products.reduce((acc, product) => acc + helper.calculatePrice({
165
- amount: product.maxAmount || product.amount,
166
- // Not all products have maxAmount, so we need to check both
167
- amountFree: product.amountFree,
168
- discount: product.discount,
169
- price: product.price,
170
- timeAmount: product.noIteration ? 1 : iteration.value,
171
- timeUnit: product.noIteration ? "hours" : iteration.unit
172
- }), 0) : 0,
173
- overlayHourly: products.reduce((acc, product) => acc + (product.noIteration ? 0 : (product.price - product.price * product.discount) * Math.max(product.amount - product.amountFree, 0)), 0),
174
- total: !hideTotal ? products.reduce((acc, product) => acc + helper.calculatePrice({
175
- amount: product.amount,
176
- amountFree: product.amountFree,
177
- discount: product.discount,
178
- price: product.price,
179
- timeAmount: product.noIteration ? 1 : iteration.value,
180
- timeUnit: product.noIteration ? "hours" : iteration.unit
181
- }), 0) : 0
182
- });
183
- onTotalPriceChange?.({
184
- total: totalPrice.total,
185
- totalMax: totalPrice.maxTotal > 0 ? totalPrice.maxTotal : void 0
186
- });
187
- }, [hideTotal, products, iteration, setTotalPrice, onTotalPriceChange, totalPrice.total, totalPrice.maxTotal, totalValue, totalMaxValue]);
188
- react.useEffect(() => {
189
- if (hideTimeUnit && (iteration.value > 1 || iteration.unit !== (defaultTimeUnit ?? "hours"))) {
190
- setIteration({
191
- unit: defaultTimeUnit ?? "hours",
192
- value: 1
193
- });
194
- }
195
- }, [hideTimeUnit, iteration, defaultTimeUnit]);
196
- return /* @__PURE__ */ jsxRuntime.jsxs(ui.Stack, { gap: 2, children: [
197
- !hideOverlay ? /* @__PURE__ */ jsxRuntime.jsx(OverlayComponent.OverlayComponent, { disableOverlayLeft, disableOverlayRight, discount, inView, isBeta, OverlayLeft, OverlayRight, overlayMargin, totalPrice, unit: overlayUnit ?? "hours", children }) : null,
198
- description === false ? null : /* @__PURE__ */ jsxRuntime.jsx(DescriptionComponent, { description, locales }),
199
- alert ? /* @__PURE__ */ jsxRuntime.jsx(ui.Alert, { sentiment: alertVariant, title: alertTitle, children: alert }) : null,
200
- /* @__PURE__ */ jsxRuntime.jsx(OverlayContext.OverlayContextProvider, { value: providerValue, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
201
- children ? /* @__PURE__ */ jsxRuntime.jsxs(componentStyle.StyledTable, { cellPadding: "0", cellSpacing: "0", "data-testid": "summary", noTotal: hideTotal, ref, children: [
202
- /* @__PURE__ */ jsxRuntime.jsxs("colgroup", { children: [
203
- /* @__PURE__ */ jsxRuntime.jsx("col", {}),
204
- /* @__PURE__ */ jsxRuntime.jsx(componentStyle.PriceCol, {})
205
- ] }),
206
- !hideTimeUnit ? /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
207
- /* @__PURE__ */ jsxRuntime.jsx("th", { children: /* @__PURE__ */ jsxRuntime.jsx(TitleComponent, { locales }) }),
208
- /* @__PURE__ */ jsxRuntime.jsx(StyledPriceCell, { children: /* @__PURE__ */ jsxRuntime.jsx(componentStyle.TimeCell, { children: /* @__PURE__ */ jsxRuntime.jsx(CustomUnitInput.CustomUnitInput, { defaultTimeUnit, iteration, setIteration, timeUnits }) }) })
209
- ] }) }) : null,
210
- /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: react.Children.map(children, (child, index) => react.isValidElement(child) ? react.cloneElement(child, {
211
- discount: discount && !child.props.discount ? discount : child.props.discount,
212
- isLastElement: index === react.Children.count(children) - 1,
213
- iteration,
214
- productsCallback
215
- }) : child) })
216
- ] }) : null,
217
- !hideTotal ? /* @__PURE__ */ jsxRuntime.jsxs(componentStyle.EmptyTable, { cellPadding: "0", cellSpacing: "0", children: [
218
- /* @__PURE__ */ jsxRuntime.jsxs("colgroup", { children: [
219
- /* @__PURE__ */ jsxRuntime.jsx("col", {}),
220
- /* @__PURE__ */ jsxRuntime.jsx(componentStyle.PriceCol, {})
221
- ] }),
222
- /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
223
- /* @__PURE__ */ jsxRuntime.jsx(componentStyle.EmptyCell, { "aria-label": "control" }),
224
- /* @__PURE__ */ jsxRuntime.jsxs(componentStyle.TotalPriceCell, { hasBorder: false, children: [
225
- isBeta ? /* @__PURE__ */ jsxRuntime.jsx(componentStyle.BadgeBeta, { long: locales[`estimate.cost.beta.${discount > 0 ? "discount" : "free"}`].length > 25, prominence: "strong", sentiment: "warning", children: `${discount > 0 ? discount * 100 : ""}
226
- ${locales[`estimate.cost.beta.${discount > 0 ? "discount" : "free"}`]}` }) : null,
227
- /* @__PURE__ */ jsxRuntime.jsx(StyledText, { as: "h3", isBeta, sentiment: "primary", variant: "heading", children: /* @__PURE__ */ jsxRuntime.jsxs(LineThrough.LineThrough, { isActive: isBeta && (discount === 0 || discount >= 1), children: [
228
- totalValue,
229
- totalPrice.maxTotal > 0 ? ` - ${totalMaxValue}` : null
230
- ] }) }),
231
- hideHourlyPriceOnTotal && totalPrice.hourly > 0 && totalPrice.hourly !== totalPrice.total && totalPrice.total > 0 ? /* @__PURE__ */ jsxRuntime.jsx(RightAlignedText, { as: "p", variant: "body", children: /* @__PURE__ */ jsxRuntime.jsxs(LineThrough.LineThrough, { isActive: isBeta && (discount === 0 || discount >= 1), children: [
232
- formatNumber(totalPrice.hourly, {
233
- maximumFractionDigits: isLongFractionDigits ? constants.maximumFractionDigitsLong.hours : constants.maximumFractionDigits.hours
234
- }),
235
- totalPrice.maxHourly > 0 ? ` - ${formatNumber(totalPrice.maxHourly, {
236
- maximumFractionDigits: isLongFractionDigits ? constants.maximumFractionDigitsLong.hours : constants.maximumFractionDigits.hours
237
- })}` : null,
238
- "/",
239
- locales[`estimate.cost.units.hours.label`].toLowerCase()
240
- ] }) }) : null
241
- ] })
242
- ] }) })
243
- ] }) : null,
244
- commitmentFees !== void 0 || monthlyFees !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
245
- /* @__PURE__ */ jsxRuntime.jsx(FeesText, { as: "h3", variant: "headingSmall", children: locales[`estimate.cost.fees.${commitmentFees ? "oneTime" : "monthly"}.title`] }),
246
- /* @__PURE__ */ jsxRuntime.jsx(componentStyle.StyledFeesTable, { children: /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: /* @__PURE__ */ jsxRuntime.jsx(Item.Item, { isLastElement: true, label: commitmentFees ? locales["estimate.cost.fees.commitment"] : monthlyFeesLabel, noIteration: true, price: commitmentFees || monthlyFees, productsCallback: {
247
- add: () => {
248
- },
249
- remove: () => {
250
- }
251
- }, children: commitmentFees ? commitmentFeesContent : monthlyFeesContent }) }) })
252
- ] }) : null
253
- ] }) })
254
- ] });
255
- };
256
- exports.EstimateCostContent = EstimateCostContent;
@@ -1,37 +0,0 @@
1
- "use client";
2
- "use strict";
3
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
- const jsxRuntime = require("@emotion/react/jsx-runtime");
5
- const react = require("react");
6
- const en = require("./locales/en.cjs");
7
- const EstimateCostContext = react.createContext({
8
- formatNumber: () => "",
9
- locales: en
10
- });
11
- const useEstimateCost = () => react.useContext(EstimateCostContext);
12
- const EstimateCostProvider = ({
13
- children,
14
- locales,
15
- currency,
16
- numberLocales
17
- }) => {
18
- const newLocales = react.useMemo(() => locales ? {
19
- ...en,
20
- ...locales
21
- } : en, [locales]);
22
- const formatNumber = react.useCallback((number, options) => {
23
- const numberFormat = new Intl.NumberFormat(numberLocales, {
24
- currency,
25
- style: "currency",
26
- ...options
27
- });
28
- return numberFormat.format(number);
29
- }, [currency, numberLocales]);
30
- const value = react.useMemo(() => ({
31
- formatNumber,
32
- locales: newLocales
33
- }), [formatNumber, newLocales]);
34
- return /* @__PURE__ */ jsxRuntime.jsx(EstimateCostContext.Provider, { value, children });
35
- };
36
- exports.EstimateCostProvider = EstimateCostProvider;
37
- exports.useEstimateCost = useEstimateCost;