@ultraviolet/plus 3.0.0-beta.8 → 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/ContentCardGroup/Card.d.ts +2 -1
  8. package/dist/components/ContentCardGroup/Card.js +65 -86
  9. package/dist/components/ContentCardGroup/SkeletonCard.d.ts +1 -1
  10. package/dist/components/ContentCardGroup/SkeletonCard.js +4 -22
  11. package/dist/components/ContentCardGroup/index.d.ts +3 -1
  12. package/dist/components/ContentCardGroup/index.js +12 -18
  13. package/dist/components/ContentCardGroup/styles.css.d.ts +7 -0
  14. package/dist/components/ContentCardGroup/styles.css.js +18 -0
  15. package/dist/components/Conversation/index.d.ts +25 -17
  16. package/dist/components/Conversation/index.js +37 -103
  17. package/dist/components/Conversation/styles.css.d.ts +7 -0
  18. package/dist/components/Conversation/styles.css.js +17 -0
  19. package/dist/components/CustomerSatisfaction/index.d.ts +3 -1
  20. package/dist/components/CustomerSatisfaction/index.js +70 -96
  21. package/dist/components/CustomerSatisfaction/styles.css.d.ts +17 -0
  22. package/dist/components/CustomerSatisfaction/styles.css.js +6 -0
  23. package/dist/components/EstimateCost/Components/CustomUnitInput.d.ts +1 -1
  24. package/dist/components/EstimateCost/Components/CustomUnitInput.js +47 -27
  25. package/dist/components/EstimateCost/Components/Item.d.ts +3 -2
  26. package/dist/components/EstimateCost/Components/Item.js +308 -288
  27. package/dist/components/EstimateCost/Components/LineThrough.d.ts +3 -5
  28. package/dist/components/EstimateCost/Components/LineThrough.js +12 -12
  29. package/dist/components/EstimateCost/Components/NumberInput.d.ts +1 -1
  30. package/dist/components/EstimateCost/Components/NumberInput.js +18 -10
  31. package/dist/components/EstimateCost/Components/Region.d.ts +2 -2
  32. package/dist/components/EstimateCost/Components/Region.js +44 -33
  33. package/dist/components/EstimateCost/Components/Regular.d.ts +3 -2
  34. package/dist/components/EstimateCost/Components/Regular.js +21 -29
  35. package/dist/components/EstimateCost/Components/Strong.d.ts +3 -10
  36. package/dist/components/EstimateCost/Components/Strong.js +13 -24
  37. package/dist/components/EstimateCost/Components/Unit.d.ts +3 -1
  38. package/dist/components/EstimateCost/Components/Unit.js +23 -31
  39. package/dist/components/EstimateCost/Components/Zone.d.ts +3 -1
  40. package/dist/components/EstimateCost/Components/Zone.js +42 -32
  41. package/dist/components/EstimateCost/Components/components.css.d.ts +77 -0
  42. package/dist/components/EstimateCost/Components/components.css.js +124 -0
  43. package/dist/components/EstimateCost/EstimateCost.d.ts +29 -29
  44. package/dist/components/EstimateCost/EstimateCost.js +74 -25
  45. package/dist/components/EstimateCost/EstimateCostContent.d.ts +1 -1
  46. package/dist/components/EstimateCost/EstimateCostContent.js +270 -174
  47. package/dist/components/EstimateCost/EstimateCostProvider.d.ts +1 -1
  48. package/dist/components/EstimateCost/EstimateCostProvider.js +24 -21
  49. package/dist/components/EstimateCost/OverlayComponent.d.ts +1 -1
  50. package/dist/components/EstimateCost/OverlayComponent.js +57 -81
  51. package/dist/components/EstimateCost/OverlayContext.d.ts +1 -1
  52. package/dist/components/EstimateCost/OverlayContext.js +2 -4
  53. package/dist/components/EstimateCost/constants.js +0 -4
  54. package/dist/components/EstimateCost/styles.css.d.ts +76 -0
  55. package/dist/components/EstimateCost/styles.css.js +50 -0
  56. package/dist/components/EstimateCost/types.d.ts +2 -1
  57. package/dist/components/FAQ/index.d.ts +3 -1
  58. package/dist/components/FAQ/index.js +4 -3
  59. package/dist/components/FAQ/styles.css.js +0 -1
  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 +95 -75
  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 +9 -6
  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 +177 -67
  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 +3 -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 -27
  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 -6
  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 -106
  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,301 +1,321 @@
1
1
  "use client";
2
- import { jsxs, jsx, Fragment } from "@emotion/react/jsx-runtime";
3
- import _styled from "@emotion/styled/base";
4
- import { css } from "@emotion/react";
2
+ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
5
3
  import { HelpCircleOutlineIcon } from "@ultraviolet/icons";
6
- import { Stack, Text, Tooltip, Badge, zoomIn } from "@ultraviolet/ui";
4
+ import { Stack, Text, Tooltip, Badge } from "@ultraviolet/ui";
5
+ import { assignInlineVars } from "@vanilla-extract/dynamic";
7
6
  import { memo, useMemo, useState, useEffect, useCallback, useId, Children, cloneElement, isValidElement } from "react";
8
- import { Cell, OverlayRow, StyledTr, StyledLeftSide, StyledDiv, priceCell } from "../componentStyle.js";
9
- import { multiplier, maximumFractionDigitsLong, maximumFractionDigits, MAX_CELL_WIDTH } from "../constants.js";
7
+ import { multiplier, maximumFractionDigitsLong, maximumFractionDigits } from "../constants.js";
10
8
  import { useEstimateCost } from "../EstimateCostProvider.js";
11
9
  import { calculatePrice } from "../helper.js";
12
10
  import { useOverlay } from "../OverlayContext.js";
13
- function _EMOTION_STRINGIFIED_CSS_ERROR__() {
14
- 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).";
15
- }
16
- const TIME_RELATED_UNIT = ["seconds", "minutes", "hours", "days", "months"];
17
- const StyledResourceName = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "production" ? {
18
- shouldForwardProp: (prop) => !["isOverlay", "animated"].includes(prop),
19
- target: "e1kzy2rr7"
20
- } : {
21
- shouldForwardProp: (prop) => !["isOverlay", "animated"].includes(prop),
22
- target: "e1kzy2rr7",
23
- label: "StyledResourceName"
24
- })("text-align:", ({
25
- isOverlay
26
- }) => isOverlay ? "initial" : "right", ";", ({
27
- isOverlay,
28
- animated
29
- }) => isOverlay ? /* @__PURE__ */ css("height:48px;display:flex;flex-direction:column;-webkit-box-pack:center;justify-content:center;animation:", animated ? /* @__PURE__ */ css("800ms ", zoomIn, ";" + (process.env.NODE_ENV === "production" ? "" : ";label:StyledResourceName;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0VxQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Db21wb25lbnRzL0l0ZW0udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBIZWxwQ2lyY2xlT3V0bGluZUljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgeyBCYWRnZSwgU3RhY2ssIFRleHQsIFRvb2x0aXAsIHpvb21JbiB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUlkLFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBPdmVybGF5Um93LFxuICBwcmljZUNlbGwsXG4gIENlbGwgYXMgU3R5bGVkQ2VsbCxcbiAgU3R5bGVkRGl2LFxuICBTdHlsZWRMZWZ0U2lkZSxcbiAgU3R5bGVkVHIsXG59IGZyb20gJy4uL2NvbXBvbmVudFN0eWxlJ1xuaW1wb3J0IHtcbiAgTUFYX0NFTExfV0lEVEgsXG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyxcbiAgbXVsdGlwbGllcixcbn0gZnJvbSAnLi4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4uL2hlbHBlcidcbmltcG9ydCB7IHVzZU92ZXJsYXkgfSBmcm9tICcuLi9PdmVybGF5Q29udGV4dCdcbmltcG9ydCB0eXBlIHtcbiAgQmFyZUVzdGltYXRlUHJvZHVjdCxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuLi90eXBlcydcblxuY29uc3QgVElNRV9SRUxBVEVEX1VOSVQ6IFVuaXRzW10gPSBbXG4gICdzZWNvbmRzJyxcbiAgJ21pbnV0ZXMnLFxuICAnaG91cnMnLFxuICAnZGF5cycsXG4gICdtb250aHMnLFxuXVxuXG5jb25zdCBTdHlsZWRSZXNvdXJjZU5hbWUgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnaXNPdmVybGF5JywgJ2FuaW1hdGVkJ10uaW5jbHVkZXMocHJvcCksXG59KTx7XG4gIGlzT3ZlcmxheTogYm9vbGVhblxuICBhbmltYXRlZDogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246ICR7KHsgaXNPdmVybGF5IH0pID0+IChpc092ZXJsYXkgPyAnaW5pdGlhbCcgOiAncmlnaHQnKX07XG5cbiAgJHsoeyBpc092ZXJsYXksIGFuaW1hdGVkIH0pID0+XG4gICAgaXNPdmVybGF5XG4gICAgICA/IGNzc2BcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbmltYXRpb246ICR7YW5pbWF0ZWQgPyBjc3NgODAwbXMgJHt6b29tSW59YCA6ICcnfTtcbiAgICAgICAgYFxuICAgICAgOiBudWxsfVxuYFxuXG5jb25zdCBTdHlsZWRCYWRnZSA9IHN0eWxlZChCYWRnZSlgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5gXG5cbmNvbnN0IFN0eWxlZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuYFxuXG5jb25zdCBNYXhXaWR0aFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1heC13aWR0aDogNzUlO1xuYFxuXG5jb25zdCBUZXh0QWxpZ25SaWdodCA9IHN0eWxlZChUZXh0KWBcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5gXG5cbmNvbnN0IFN0eWxlZFRvb2x0aXAgPSBzdHlsZWQoVG9vbHRpcClgXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKFN0eWxlZENlbGwpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG5gXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXRlbUNhbGxiYWNrOiAoYW1vdW50OiBudW1iZXIsIGlzVmFyaWFudDogYm9vbGVhbikgPT4gdm9pZFxuICBhbW91bnQ6IG51bWJlclxuICBtYXhBbW91bnQ6IG51bWJlclxuICB1bml0OiBzdHJpbmdcbn1cblxudHlwZSBJdGVtUHJvcHMgPSB7XG4gIGFtb3VudD86IG51bWJlclxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXJlIGZyZWUuIEl0IHdpbGwgYmUgZGVkdWN0ZWQgdG8gcHJpY2Ugb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBhbW91bnRGcmVlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgYW5pbWF0ZWQ/OiBib29sZWFuXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlXG4gIGRpc2NvdW50PzogbnVtYmVyXG4gIGRpc2NvdW50VGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheVxuICAgKi9cbiAgaGlkZUZyb21PdmVybGF5PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0RlZmluZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRmlyc3RFbGVtZW50PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBpc1ByaW1hcnlCYWNrZ3JvdW5kPzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgLyoqXG4gICAqIFN0cmluZyB0aGF0IGlzIGRpc3BsYXllZCBvbiBsZWZ0IHBhcnQgb2YgdGhlIGl0ZW0sIGl0IGRlZmluZXMgdGhlIGl0ZW1cbiAgICovXG4gIGxhYmVsPzogUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgdmFyaWFudFxuICAgKi9cbiAgbGFiZWxUZXh0VmFyaWFudD86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsndmFyaWFudCddXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgKi9cbiAgbGFiZWxUZXh0UHJvbWluZW5jZT86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsncHJvbWluZW5jZSddXG4gIC8qKlxuICAgKiBJZiB5b3VyIHByaWNlIGhhcyBhIGxvdCBvZiBudW1iZXIgYWZ0ZXIgZGVjaW1hbCBwb2ludCAoZXg6IDAuMDAwMDA3NikgLSB1cCA4IGZyYWN0aW9uIGRpZ2l0c1xuICAgKi9cbiAgbG9uZ0ZyYWN0aW9uRGlnaXRzPzogYm9vbGVhblxuICAvKipcbiAgICogQ3JlYXRlIGEgcmFuZ2UgcHJpY2Ugd2l0aCBbYW1vdW50IC0gbWF4QW1vdW50XSB2YWx1ZXMgYW5kIHByaWNlc1xuICAgKi9cbiAgbWF4QW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBQcmljZSBwZXIgbW9udGhcbiAgICovXG4gIG1vbnRobHlQcmljZT86IG51bWJlclxuICAvKipcbiAgICogUmVtb3ZlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICovXG4gIG5vQm9yZGVyPzogYm9vbGVhblxuICAvKipcbiAgICogSWYgdGhlIHByaWNlIG9mIHRoZSBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIGVuYWJsZSB0aGlzIHByb3AuIGV4OiA1a2cgb2YgY2hvY29sYXRlIGlzIHNhbWUgcHJpY2Ugb3ZlciAxIG1vbnRoIG9yIDEgaG91ci5cbiAgICovXG4gIG5vSXRlcmF0aW9uPzogYm9vbGVhblxuICBub0l0ZXJhdGlvblRleHQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgcHJpY2Ugb24gdGhlIHJpZ2h0IHNlY3Rpb24gb2YgdGhlIHRhYmxlXG4gICAqL1xuICBub1ByaWNlPzogYm9vbGVhblxuICAvKipcbiAgICogTm90aWNlIHRvIGRpc3BsYXkgYmVsb3cgdGhlIGxhYmVsXG4gICAqL1xuICBub3RpY2U/OiBzdHJpbmdcbiAgb25BbW91bnRDaGFuZ2U/OiAoYW1vdW50OiBudW1iZXIpID0+IHZvaWRcbiAgLyoqXG4gICAqIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICovXG4gIHByaWNlPzogbnVtYmVyXG4gIHByaWNlVGV4dD86IFJlYWN0Tm9kZVxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICAvKipcbiAgICogSGlkZSBpdGVtIGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICovXG4gIHNob3VsZEJlSGlkZGVuPzogYm9vbGVhblxuICAvKipcbiAgICogRGlzcGxheSBhIGNvbXBsZW1lbnRhcnkgdGV4dCBvbiB0aGUgcmlnaHQgb2YgdGhlIGxhYmVsXG4gICAqL1xuICBzdWJMYWJlbD86IHN0cmluZ1xuICAvKipcbiAgICogSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtIGxpa2VcbiAgICovXG4gIHRhYnVsYXRpb24/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRleHQgdG8gZGlzcGxheSBpbiBjYXNlIG9mIG5vdCBkZWZpbmVkIHZhbHVlXG4gICAqL1xuICB0ZXh0Tm90RGVmaW5lZD86IHN0cmluZ1xuICAvKipcbiAgICogRGlzcGxheSBuZWFyIGxhYmVsLCBhbiBpY29uIHdpdGggYSB0b29sdGlwIHRoYXQgY29udGFpbnMgeW91ciB0ZXh0XG4gICAqL1xuICB0b29sdGlwSW5mbz86IHN0cmluZ1xuICAvKipcbiAgICogVW5pdCBvZiB5b3VyIGl0ZW0sIGV4YW1wbGVzOiBHQiwgTUIsIE5vZGUsIFF1ZXJpZXMsIGV0Yy5cbiAgICovXG4gIHVuaXQ/OlxuICAgIHwgJ21iJ1xuICAgIHwgJ2diJ1xuICAgIHwgJ3RiJ1xuICAgIHwgJ3NlY29uZHMnXG4gICAgfCAnbWludXRlcydcbiAgICB8ICdob3VycydcbiAgICB8ICdkYXlzJ1xuICAgIHwgJ21vbnRocydcbiAgICB8ICd5ZWFycydcbiAgICAvLyBBbGxvdyBhIHN0cmluZyBmb3IgdW5pdCBidXQga2VlcCBhdXRvY29tcGxldGUgZm9yIHRoZSBhYm92ZSB2YWx1ZXNcbiAgICB8IChzdHJpbmcgJiBOb25OdWxsYWJsZTx1bmtub3duPilcbiAgLypcbiAgICogVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gICAqL1xuICBzdHJpa2VUaHJvdWdoPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZU5vUHJpY2VJdGVtID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuZXhwb3J0IGNvbnN0IEl0ZW0gPSBtZW1vKFxuICAoe1xuICAgIGRpc2NvdW50ID0gMCxcbiAgICBwcmljZVRleHQsXG4gICAgZGlzY291bnRUZXh0LFxuICAgIGxhYmVsLFxuICAgIHRvb2x0aXBJbmZvLCAvLyBTaG93cyBhbiBpY29uIHdpdGggdG9vbHRpcCB0aGF0IGNvbnRhaW5zIHRoaXMgdGV4dFxuICAgIHN1YkxhYmVsID0gJycsIC8vIFVzdWFsbHkgdXNlZCBmb3Igc2hvd2luZyBhbW91bnQgdGhhdCBpcyBmcmVlXG4gICAgcHJpY2U6IGJhc2VQcmljZSA9IDAsIC8vIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICBtb250aGx5UHJpY2UgPSAwLCAvLyBQcmljZSBwZXIgbW9udGhcbiAgICB1bml0OiBiYXNlVW5pdCwgLy8gQ2FuIGJlIEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgIGFtb3VudDogY3VycmVudEFtb3VudCA9IDEsIC8vIEN1cnJlbnQgbnVtYmVyIG9mIGl0ZW1zXG4gICAgb25BbW91bnRDaGFuZ2UsXG4gICAgYW1vdW50RnJlZSA9IDAsIC8vIEFtb3VudCB0aGF0IGlzIGZyZWUgLSBvZmZlcmVkIGJ5IGNvbXBhbnlcbiAgICBtYXhBbW91bnQgPSAwLCAvLyBNYXggYW1vdW50IC0gdXNlZCBmb3Iga3ViZXJuZXRlcyBmb3IgZXhhbXBsZVxuICAgIGxvbmdGcmFjdGlvbkRpZ2l0cyA9IGZhbHNlLCAvLyBJbiBjYXNlIHByaWNlIGlzIHJlYWxseSBsb25nIDAuMDAwMDA3NiAtIHVwIDcgZnJhY3Rpb24gZGlnaXRzXG4gICAgbm9JdGVyYXRpb24gPSBmYWxzZSwgLy8gaWYgaXRlbSBpcyBub3QgYmFzZWQgb24gdGltZSAoZXg6IGRvd25sb2FkLCB1cGxvYWQsIHRyYW5zZmVyKVxuICAgIG5vSXRlcmF0aW9uVGV4dCxcbiAgICBub0JvcmRlciwgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYm90dG9tIG9mIHRoZSBpdGVtXG4gICAgbm9QcmljZSwgLy8gcmVtb3ZlIHRoZSBwcmljZSBvbiByaWdodCBzaWRlIG9mIHRoZSB0YWJsZVxuICAgIGlzRGVmaW5lZCA9IHRydWUsXG4gICAgY2hpbGRyZW4gPSBudWxsLFxuICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNMYXN0RWxlbWVudCA9IGZhbHNlLFxuICAgIGlzUHJpbWFyeUJhY2tncm91bmQgPSBmYWxzZSxcbiAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgIGl0ZXJhdGlvbjogcmVjZWl2ZWRJdGVyYXRpb24sIC8vIE9iamVjdCBmcm9tIHBhcmVudCB0aGF0IGNvbnRhaW5zIHRpbWUgcGVyaW9kIChob3VycywgZGF5cywgbW9udGhzKVxuICAgIHNob3VsZEJlSGlkZGVuID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsXG4gICAgaGlkZUZyb21PdmVybGF5ID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaW4gYW55IGNhc2VcbiAgICB0ZXh0Tm90RGVmaW5lZCwgLy8gVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICBhbmltYXRlZCA9IGZhbHNlLCAvLyBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgIHRhYnVsYXRpb24sIC8vIEluY3JlYXNlIGxlZnQgcGFkZGluZyBvZiB0aGUgaXRlbVxuICAgIGxhYmVsVGV4dFZhcmlhbnQsIC8vIFRvIGNoYW5nZSBsZWZ0IGNlbGwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAgbGFiZWxUZXh0UHJvbWluZW5jZSwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHByb21pbmVuY2VcbiAgICBub3RpY2UsIC8vIFRvIGRpc3BsYXkgYSBncmF5IHRleHQgYmVsb3cgdGhlIGxhYmVsXG4gICAgc3RyaWtlVGhyb3VnaCwgLy8gVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gIH06IEl0ZW1Qcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgbG9jYWxlcywgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuXG4gICAgbGV0IGl0ZXJhdGlvbjogSXRlcmF0aW9uIHwgdW5kZWZpbmVkXG5cbiAgICBpZiAobm9JdGVyYXRpb24pIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHtcbiAgICAgICAgLi4uKHJlY2VpdmVkSXRlcmF0aW9uID8/IHsgdmFsdWU6IDAgfSksXG4gICAgICAgIHVuaXQ6ICdob3VycycsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHJlY2VpdmVkSXRlcmF0aW9uXG4gICAgfVxuXG4gICAgY29uc3QgcHJpY2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChtb250aGx5UHJpY2UgJiYgYmFzZVByaWNlID09PSAwKSB7XG4gICAgICAgIHJldHVybiBtb250aGx5UHJpY2UgLyBtdWx0aXBsaWVyLm1vbnRoc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVByaWNlXG4gICAgfSwgW2Jhc2VQcmljZSwgbW9udGhseVByaWNlXSlcblxuICAgIGNvbnN0IHVuaXQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghYmFzZVVuaXQpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QudW5pdHMuZ2IubGFiZWwnXVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVVuaXRcbiAgICB9LCBbYmFzZVVuaXQsIGxvY2FsZXNdKVxuXG4gICAgY29uc3QgeyBpc092ZXJsYXkgfSA9IHVzZU92ZXJsYXkoKVxuICAgIGNvbnN0IFJvdyA9IGlzT3ZlcmxheSA/IE92ZXJsYXlSb3cgOiBTdHlsZWRUclxuICAgIGNvbnN0IENlbGwgPSBpc092ZXJsYXkgPyBTdHlsZWRDZWxsLndpdGhDb21wb25lbnQoJ2RpdicpIDogU3R5bGVkQ2VsbFxuICAgIGNvbnN0IExlZnRTaWRlID0gaXNPdmVybGF5ID8gJ2RpdicgOiBTdHlsZWRMZWZ0U2lkZVxuXG4gICAgY29uc3QgW2Ftb3VudCwgc2V0QW1vdW50XSA9IHVzZVN0YXRlKGN1cnJlbnRBbW91bnQpXG4gICAgY29uc3QgW2lzVmFyaWFudCwgc2V0SXNWYXJpYW50XSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHNldEFtb3VudChjdXJyZW50QW1vdW50KSwgW3NldEFtb3VudCwgY3VycmVudEFtb3VudF0pXG4gICAgdXNlRWZmZWN0KCgpID0+IG9uQW1vdW50Q2hhbmdlPy4oYW1vdW50KSwgW29uQW1vdW50Q2hhbmdlLCBhbW91bnRdKVxuXG4gICAgY29uc3QgaXRlbUNhbGxiYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAobG9jYWxBbW91bnQ6IG51bWJlciwgbG9jYWxJc1ZhcmlhbnQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgc2V0QW1vdW50KGxvY2FsQW1vdW50KVxuICAgICAgICBzZXRJc1ZhcmlhbnQobG9jYWxJc1ZhcmlhbnQpXG4gICAgICB9LFxuICAgICAgW3NldEFtb3VudCwgc2V0SXNWYXJpYW50XSxcbiAgICApXG5cbiAgICBjb25zdCBpZCA9IHVzZUlkKClcblxuICAgIC8vIFdlIHJlbW92ZSBJdGVtIGZyb20gb2JqZWN0IGxpc3Qgd2hlbiBJZW0gY29tcG9uZW50IHVubW91bnQgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgIHVzZUVmZmVjdChcbiAgICAgICgpID0+ICgpID0+IHByb2R1Y3RzQ2FsbGJhY2s/LnJlbW92ZSh7IGlkIH0pLFxuICAgICAgW2lkLCBwcm9kdWN0c0NhbGxiYWNrXSxcbiAgICApXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFpc092ZXJsYXkpIHtcbiAgICAgICAgcHJvZHVjdHNDYWxsYmFjaz8uYWRkKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBpc1ZhcmlhbnQsXG4gICAgICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICBub0l0ZXJhdGlvbixcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBwcmljZSxcbiAgICAgIGRpc2NvdW50LFxuICAgICAgYW1vdW50LFxuICAgICAgaWQsXG4gICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgbWF4QW1vdW50LFxuICAgICAgbm9JdGVyYXRpb24sXG4gICAgICBpc1ZhcmlhbnQsXG4gICAgICBhbW91bnRGcmVlLFxuICAgICAgaXNPdmVybGF5LFxuICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgIF0pXG5cbiAgICBjb25zdCBjb21wdXRlZEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50LFxuICAgICAgICAgIGFtb3VudEZyZWUsXG4gICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgcHJpY2UsXG4gICAgICAgICAgdGltZUFtb3VudDogbm9JdGVyYXRpb24gPyAxIDogKGl0ZXJhdGlvbj8udmFsdWUgPz8gMSksXG4gICAgICAgICAgdGltZVVuaXQ6IG5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IChpdGVyYXRpb24/LnVuaXQgPz8gJ2hvdXJzJyksXG4gICAgICAgIH0pLFxuICAgICAgW3ByaWNlLCBhbW91bnQsIGFtb3VudEZyZWUsIGl0ZXJhdGlvbiwgbm9JdGVyYXRpb24sIGRpc2NvdW50XSxcbiAgICApXG5cbiAgICBjb25zdCBjb21wdXRlZE1heEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50OiBtYXhBbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIG1heEFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFpdGVyYXRpb24/LnVuaXQpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24/LnVuaXRdXG4gICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbj8udW5pdF1cbiAgICB9LCBbaXRlcmF0aW9uPy51bml0LCBsb25nRnJhY3Rpb25EaWdpdHNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxSb3dcbiAgICAgICAgaGlkZUZyb21PdmVybGF5PXtoaWRlRnJvbU92ZXJsYXl9XG4gICAgICAgIGlzRmlyc3RFbGVtZW50PXtpc0ZpcnN0RWxlbWVudH1cbiAgICAgICAgc2hvdWxkQmVIaWRkZW49e3Nob3VsZEJlSGlkZGVufVxuICAgICAgPlxuICAgICAgICA8Q2VsbFxuICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyICYmICFpc092ZXJsYXl9XG4gICAgICAgICAgdGFidWxhdGlvbj17dGFidWxhdGlvbn1cbiAgICAgICAgICB3aWR0aD17IWlzT3ZlcmxheSA/IE1BWF9DRUxMX1dJRFRIIDogJ2luaGVyaXQnfVxuICAgICAgICA+XG4gICAgICAgICAgPExlZnRTaWRlPlxuICAgICAgICAgICAgPFN0YWNrPlxuICAgICAgICAgICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtsYWJlbFRleHRQcm9taW5lbmNlID8/ICdkZWZhdWx0J31cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e2xhYmVsVGV4dFZhcmlhbnQgPz8gJ2JvZHknfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAge3Rvb2x0aXBJbmZvID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZERpdj5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRvb2x0aXAgdGV4dD17dG9vbHRpcEluZm99PlxuICAgICAgICAgICAgICAgICAgICAgIDxIZWxwQ2lyY2xlT3V0bGluZUljb24gc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVG9vbHRpcD5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgIHtzdWJMYWJlbCAmJiAhaXNPdmVybGF5ID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHQgYXM9XCJwXCIgaXRhbGljIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICB7c3ViTGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge2Rpc2NvdW50ID4gMCAmJiBkaXNjb3VudFRleHQgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkQmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgcHJvbWluZW5jZT1cInN0cm9uZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7ZGlzY291bnRUZXh0fVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRCYWRnZT5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAge25vdGljZSA/IChcbiAgICAgICAgICAgICAgICA8TWF4V2lkdGhUZXh0IGFzPVwicFwiIHByb21pbmVuY2U9XCJ3ZWFrXCIgdmFyaWFudD1cImNhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgIHtub3RpY2V9XG4gICAgICAgICAgICAgICAgPC9NYXhXaWR0aFRleHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgIDxTdHlsZWRSZXNvdXJjZU5hbWUgYW5pbWF0ZWQ9e2FuaW1hdGVkfSBpc092ZXJsYXk9e2lzT3ZlcmxheX0+XG4gICAgICAgICAgICAgIHtpc0RlZmluZWRcbiAgICAgICAgICAgICAgICA/IENoaWxkcmVuLm1hcChjaGlsZHJlbiwgY2hpbGQgPT5cbiAgICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgICAgPyBjbG9uZUVsZW1lbnQoY2hpbGQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGV4dE5vdERlZmluZWQgfHwgbG9jYWxlc1snZXN0aW1hdGUuY29zdC5ub3REZWZpbmVkJ119XG4gICAgICAgICAgICA8L1N0eWxlZFJlc291cmNlTmFtZT5cbiAgICAgICAgICA8L0xlZnRTaWRlPlxuICAgICAgICA8L0NlbGw+XG4gICAgICAgIHshaXNPdmVybGF5ID8gKFxuICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGxcbiAgICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyfVxuICAgICAgICAgICAgcHJpbWFyeT17aXNQcmltYXJ5QmFja2dyb3VuZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7IW5vUHJpY2UgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPFN0eWxlTm9QcmljZUl0ZW1cbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtcbiAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRJdGVtUHJpY2UgPT09IDAgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICA/ICd3ZWFrJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2RlZmF1bHQnXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ25ldXRyYWwnXG4gICAgICAgICAgICAgICAgICAgICAgOiAncHJpbWFyeSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHN0cmlrZVRocm91Z2g9e3N0cmlrZVRocm91Z2h9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PXtub0l0ZXJhdGlvblRleHQgPyAnaGVhZGluZ1NtYWxsJyA6ICdib2R5U3Ryb25nJ31cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cHJpY2VUZXh0fVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHRcbiAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXROdW1iZXIoY29tcHV0ZWRJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIHtub0l0ZXJhdGlvblRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVNtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgL3tub0l0ZXJhdGlvblRleHR9XG4gICAgICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHQgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPiAwXG4gICAgICAgICAgICAgICAgICAgID8gYCAtICR7Zm9ybWF0TnVtYmVyKGNvbXB1dGVkTWF4SXRlbVByaWNlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1N0eWxlTm9QcmljZUl0ZW0+XG4gICAgICAgICAgICAgICAgeyhhbW91bnQgLSBhbW91bnRGcmVlICE9PSAxICYmIGNvbXB1dGVkSXRlbVByaWNlID4gMCkgfHxcbiAgICAgICAgICAgICAgICAobWF4QW1vdW50ID4gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDApID8gKFxuICAgICAgICAgICAgICAgICAgPFRleHRBbGlnblJpZ2h0IGFzPVwicFwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtmb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdDogJ2hvdXJzJyxcbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGxvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcuaG91cnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge1RJTUVfUkVMQVRFRF9VTklULmluY2x1ZGVzKHVuaXQgYXMgVW5pdHMpXG4gICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy4ke3VuaXQgYXMgVW5pdHN9LmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgICAgOiBgLyR7dW5pdH1gfVxuICAgICAgICAgICAgICAgICAgICB7IW5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgPyBgLyR7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VzdGltYXRlLmNvc3QudW5pdHMuaG91cnMubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIDwvVGV4dEFsaWduUmlnaHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9Sb3c+XG4gICAgKVxuICB9LFxuKVxuIl19 */") : "", ";" + (process.env.NODE_ENV === "production" ? "" : ";label:StyledResourceName;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNERXIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCB7IEhlbHBDaXJjbGVPdXRsaW5lSWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEJhZGdlLCBTdGFjaywgVGV4dCwgVG9vbHRpcCwgem9vbUluIH0gZnJvbSAnQHVsdHJhdmlvbGV0L3VpJ1xuaW1wb3J0IHR5cGUgeyBDb21wb25lbnRQcm9wcywgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBDaGlsZHJlbixcbiAgY2xvbmVFbGVtZW50LFxuICBpc1ZhbGlkRWxlbWVudCxcbiAgbWVtbyxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSWQsXG4gIHVzZU1lbW8sXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCdcbmltcG9ydCB7XG4gIE92ZXJsYXlSb3csXG4gIHByaWNlQ2VsbCxcbiAgQ2VsbCBhcyBTdHlsZWRDZWxsLFxuICBTdHlsZWREaXYsXG4gIFN0eWxlZExlZnRTaWRlLFxuICBTdHlsZWRUcixcbn0gZnJvbSAnLi4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQge1xuICBNQVhfQ0VMTF9XSURUSCxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nLFxuICBtdWx0aXBsaWVyLFxufSBmcm9tICcuLi9jb25zdGFudHMnXG5pbXBvcnQgeyB1c2VFc3RpbWF0ZUNvc3QgfSBmcm9tICcuLi9Fc3RpbWF0ZUNvc3RQcm92aWRlcidcbmltcG9ydCB7IGNhbGN1bGF0ZVByaWNlIH0gZnJvbSAnLi4vaGVscGVyJ1xuaW1wb3J0IHsgdXNlT3ZlcmxheSB9IGZyb20gJy4uL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZVByb2R1Y3QsXG4gIEl0ZXJhdGlvbixcbiAgVW5pdHMsXG59IGZyb20gJy4uL3R5cGVzJ1xuXG5jb25zdCBUSU1FX1JFTEFURURfVU5JVDogVW5pdHNbXSA9IFtcbiAgJ3NlY29uZHMnLFxuICAnbWludXRlcycsXG4gICdob3VycycsXG4gICdkYXlzJyxcbiAgJ21vbnRocycsXG5dXG5cbmNvbnN0IFN0eWxlZFJlc291cmNlTmFtZSA9IHN0eWxlZCgnZGl2Jywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PiAhWydpc092ZXJsYXknLCAnYW5pbWF0ZWQnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPHtcbiAgaXNPdmVybGF5OiBib29sZWFuXG4gIGFuaW1hdGVkOiBib29sZWFuXG59PmBcbiAgdGV4dC1hbGlnbjogJHsoeyBpc092ZXJsYXkgfSkgPT4gKGlzT3ZlcmxheSA/ICdpbml0aWFsJyA6ICdyaWdodCcpfTtcblxuICAkeyh7IGlzT3ZlcmxheSwgYW5pbWF0ZWQgfSkgPT5cbiAgICBpc092ZXJsYXlcbiAgICAgID8gY3NzYFxuICAgICAgICAgIGhlaWdodDogNDhweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFuaW1hdGlvbjogJHthbmltYXRlZCA/IGNzc2A4MDBtcyAke3pvb21Jbn1gIDogJyd9O1xuICAgICAgICBgXG4gICAgICA6IG51bGx9XG5gXG5cbmNvbnN0IFN0eWxlZEJhZGdlID0gc3R5bGVkKEJhZGdlKWBcbiAgbWFyZ2luLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IE1heFdpZHRoVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWF4LXdpZHRoOiA3NSU7XG5gXG5cbmNvbnN0IFRleHRBbGlnblJpZ2h0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkVG9vbHRpcCA9IHN0eWxlZChUb29sdGlwKWBcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuYFxuXG5jb25zdCBTdHlsZWRQcmljZUNlbGwgPSBzdHlsZWQoU3R5bGVkQ2VsbClgXG4gICR7KHsgdGhlbWUgfSkgPT4gcHJpY2VDZWxsKHRoZW1lKX1cbmBcblxudHlwZSBFeHRyYVByb3BzID0ge1xuICBpdGVtQ2FsbGJhY2s6IChhbW91bnQ6IG51bWJlciwgaXNWYXJpYW50OiBib29sZWFuKSA9PiB2b2lkXG4gIGFtb3VudDogbnVtYmVyXG4gIG1heEFtb3VudDogbnVtYmVyXG4gIHVuaXQ6IHN0cmluZ1xufVxuXG50eXBlIEl0ZW1Qcm9wcyA9IHtcbiAgYW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcmUgZnJlZS4gSXQgd2lsbCBiZSBkZWR1Y3RlZCB0byBwcmljZSBvZiB0aGUgaXRlbS5cbiAgICovXG4gIGFtb3VudEZyZWU/OiBudW1iZXJcbiAgLyoqXG4gICAqIGlmIHRydWUsIHpvb21JbiBhbmltYXRpb24gaXMgdHJpZ2dlcmVkXG4gICAqL1xuICBhbmltYXRlZD86IGJvb2xlYW5cbiAgY2hpbGRyZW4/OiBSZWFjdE5vZGVcbiAgZGlzY291bnQ/OiBudW1iZXJcbiAgZGlzY291bnRUZXh0Pzogc3RyaW5nXG4gIC8qKlxuICAgKiBIaWRlIGVsZW1lbnQgZnJvbSBvdmVybGF5XG4gICAqL1xuICBoaWRlRnJvbU92ZXJsYXk/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRGVmaW5lZD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIERvIG5vdCBzZXQgdGhpcyBwcm9wLCBpdCBpcyB0cmFuc2ZlcnJlZCBmcm9tIHBhcmVudFxuICAgKi9cbiAgaXNGaXJzdEVsZW1lbnQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzTGFzdEVsZW1lbnQ/OiBib29sZWFuXG4gIGlzUHJpbWFyeUJhY2tncm91bmQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGl0ZXJhdGlvbj86IEl0ZXJhdGlvblxuICAvKipcbiAgICogU3RyaW5nIHRoYXQgaXMgZGlzcGxheWVkIG9uIGxlZnQgcGFydCBvZiB0aGUgaXRlbSwgaXQgZGVmaW5lcyB0aGUgaXRlbVxuICAgKi9cbiAgbGFiZWw/OiBSZWFjdE5vZGVcbiAgLyoqXG4gICAqIENoYW5nZXMgbGFiZWwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAqL1xuICBsYWJlbFRleHRWYXJpYW50PzogQ29tcG9uZW50UHJvcHM8dHlwZW9mIFRleHQ+Wyd2YXJpYW50J11cbiAgLyoqXG4gICAqIENoYW5nZXMgbGFiZWwgdHlwb2dyYXBoeSBwcm9taW5lbmNlXG4gICAqL1xuICBsYWJlbFRleHRQcm9taW5lbmNlPzogQ29tcG9uZW50UHJvcHM8dHlwZW9mIFRleHQ+Wydwcm9taW5lbmNlJ11cbiAgLyoqXG4gICAqIElmIHlvdXIgcHJpY2UgaGFzIGEgbG90IG9mIG51bWJlciBhZnRlciBkZWNpbWFsIHBvaW50IChleDogMC4wMDAwMDc2KSAtIHVwIDggZnJhY3Rpb24gZGlnaXRzXG4gICAqL1xuICBsb25nRnJhY3Rpb25EaWdpdHM/OiBib29sZWFuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSByYW5nZSBwcmljZSB3aXRoIFthbW91bnQgLSBtYXhBbW91bnRdIHZhbHVlcyBhbmQgcHJpY2VzXG4gICAqL1xuICBtYXhBbW91bnQ/OiBudW1iZXJcbiAgLyoqXG4gICAqIFByaWNlIHBlciBtb250aFxuICAgKi9cbiAgbW9udGhseVByaWNlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBSZW1vdmUgYm9yZGVyIGJvdHRvbSBvZiB0aGUgaXRlbVxuICAgKi9cbiAgbm9Cb3JkZXI/OiBib29sZWFuXG4gIC8qKlxuICAgKiBJZiB0aGUgcHJpY2Ugb2YgdGhlIGl0ZW0gaXMgbm90IGJhc2VkIG9uIHRpbWUgZW5hYmxlIHRoaXMgcHJvcC4gZXg6IDVrZyBvZiBjaG9jb2xhdGUgaXMgc2FtZSBwcmljZSBvdmVyIDEgbW9udGggb3IgMSBob3VyLlxuICAgKi9cbiAgbm9JdGVyYXRpb24/OiBib29sZWFuXG4gIG5vSXRlcmF0aW9uVGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogUmVtb3ZlIHRoZSBwcmljZSBvbiB0aGUgcmlnaHQgc2VjdGlvbiBvZiB0aGUgdGFibGVcbiAgICovXG4gIG5vUHJpY2U/OiBib29sZWFuXG4gIC8qKlxuICAgKiBOb3RpY2UgdG8gZGlzcGxheSBiZWxvdyB0aGUgbGFiZWxcbiAgICovXG4gIG5vdGljZT86IHN0cmluZ1xuICBvbkFtb3VudENoYW5nZT86IChhbW91bnQ6IG51bWJlcikgPT4gdm9pZFxuICAvKipcbiAgICogSG91cmx5IHByaWNlIGZvciBvbmUgdW5pdFxuICAgKi9cbiAgcHJpY2U/OiBudW1iZXJcbiAgcHJpY2VUZXh0PzogUmVhY3ROb2RlXG4gIHByb2R1Y3RzQ2FsbGJhY2s/OiB7XG4gICAgYWRkOiAocHJvZHVjdDogRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gICAgcmVtb3ZlOiAocHJvZHVjdDogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICB9XG4gIC8qKlxuICAgKiBIaWRlIGl0ZW0gZnJvbSBvdmVybGF5IGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbFxuICAgKi9cbiAgc2hvdWxkQmVIaWRkZW4/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEaXNwbGF5IGEgY29tcGxlbWVudGFyeSB0ZXh0IG9uIHRoZSByaWdodCBvZiB0aGUgbGFiZWxcbiAgICovXG4gIHN1YkxhYmVsPzogc3RyaW5nXG4gIC8qKlxuICAgKiBJbmNyZWFzZSBsZWZ0IHBhZGRpbmcgb2YgdGhlIGl0ZW0gbGlrZVxuICAgKi9cbiAgdGFidWxhdGlvbj86IG51bWJlclxuICAvKipcbiAgICogVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICovXG4gIHRleHROb3REZWZpbmVkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBEaXNwbGF5IG5lYXIgbGFiZWwsIGFuIGljb24gd2l0aCBhIHRvb2x0aXAgdGhhdCBjb250YWlucyB5b3VyIHRleHRcbiAgICovXG4gIHRvb2x0aXBJbmZvPzogc3RyaW5nXG4gIC8qKlxuICAgKiBVbml0IG9mIHlvdXIgaXRlbSwgZXhhbXBsZXM6IEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgKi9cbiAgdW5pdD86XG4gICAgfCAnbWInXG4gICAgfCAnZ2InXG4gICAgfCAndGInXG4gICAgfCAnc2Vjb25kcydcbiAgICB8ICdtaW51dGVzJ1xuICAgIHwgJ2hvdXJzJ1xuICAgIHwgJ2RheXMnXG4gICAgfCAnbW9udGhzJ1xuICAgIHwgJ3llYXJzJ1xuICAgIC8vIEFsbG93IGEgc3RyaW5nIGZvciB1bml0IGJ1dCBrZWVwIGF1dG9jb21wbGV0ZSBmb3IgdGhlIGFib3ZlIHZhbHVlc1xuICAgIHwgKHN0cmluZyAmIE5vbk51bGxhYmxlPHVua25vd24+KVxuICAvKlxuICAgKiBUbyBzdHJpa2UgdGhyb3VnaCB0aGUgcHJpY2VcbiAgICovXG4gIHN0cmlrZVRocm91Z2g/OiBib29sZWFuXG59XG5cbmNvbnN0IFN0eWxlTm9QcmljZUl0ZW0gPSBzdHlsZWQoVGV4dClgXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuYFxuXG5leHBvcnQgY29uc3QgSXRlbSA9IG1lbW8oXG4gICh7XG4gICAgZGlzY291bnQgPSAwLFxuICAgIHByaWNlVGV4dCxcbiAgICBkaXNjb3VudFRleHQsXG4gICAgbGFiZWwsXG4gICAgdG9vbHRpcEluZm8sIC8vIFNob3dzIGFuIGljb24gd2l0aCB0b29sdGlwIHRoYXQgY29udGFpbnMgdGhpcyB0ZXh0XG4gICAgc3ViTGFiZWwgPSAnJywgLy8gVXN1YWxseSB1c2VkIGZvciBzaG93aW5nIGFtb3VudCB0aGF0IGlzIGZyZWVcbiAgICBwcmljZTogYmFzZVByaWNlID0gMCwgLy8gSG91cmx5IHByaWNlIGZvciBvbmUgdW5pdFxuICAgIG1vbnRobHlQcmljZSA9IDAsIC8vIFByaWNlIHBlciBtb250aFxuICAgIHVuaXQ6IGJhc2VVbml0LCAvLyBDYW4gYmUgR0IsIE1CLCBOb2RlLCBRdWVyaWVzLCBldGMuXG4gICAgYW1vdW50OiBjdXJyZW50QW1vdW50ID0gMSwgLy8gQ3VycmVudCBudW1iZXIgb2YgaXRlbXNcbiAgICBvbkFtb3VudENoYW5nZSxcbiAgICBhbW91bnRGcmVlID0gMCwgLy8gQW1vdW50IHRoYXQgaXMgZnJlZSAtIG9mZmVyZWQgYnkgY29tcGFueVxuICAgIG1heEFtb3VudCA9IDAsIC8vIE1heCBhbW91bnQgLSB1c2VkIGZvciBrdWJlcm5ldGVzIGZvciBleGFtcGxlXG4gICAgbG9uZ0ZyYWN0aW9uRGlnaXRzID0gZmFsc2UsIC8vIEluIGNhc2UgcHJpY2UgaXMgcmVhbGx5IGxvbmcgMC4wMDAwMDc2IC0gdXAgNyBmcmFjdGlvbiBkaWdpdHNcbiAgICBub0l0ZXJhdGlvbiA9IGZhbHNlLCAvLyBpZiBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIChleDogZG93bmxvYWQsIHVwbG9hZCwgdHJhbnNmZXIpXG4gICAgbm9JdGVyYXRpb25UZXh0LFxuICAgIG5vQm9yZGVyLCAvLyByZW1vdmUgdGhlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICBub1ByaWNlLCAvLyByZW1vdmUgdGhlIHByaWNlIG9uIHJpZ2h0IHNpZGUgb2YgdGhlIHRhYmxlXG4gICAgaXNEZWZpbmVkID0gdHJ1ZSxcbiAgICBjaGlsZHJlbiA9IG51bGwsXG4gICAgaXNGaXJzdEVsZW1lbnQgPSBmYWxzZSxcbiAgICBpc0xhc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNQcmltYXJ5QmFja2dyb3VuZCA9IGZhbHNlLFxuICAgIHByb2R1Y3RzQ2FsbGJhY2ssXG4gICAgaXRlcmF0aW9uOiByZWNlaXZlZEl0ZXJhdGlvbiwgLy8gT2JqZWN0IGZyb20gcGFyZW50IHRoYXQgY29udGFpbnMgdGltZSBwZXJpb2QgKGhvdXJzLCBkYXlzLCBtb250aHMpXG4gICAgc2hvdWxkQmVIaWRkZW4gPSBmYWxzZSwgLy8gSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICBoaWRlRnJvbU92ZXJsYXkgPSBmYWxzZSwgLy8gSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheSBpbiBhbnkgY2FzZVxuICAgIHRleHROb3REZWZpbmVkLCAvLyBUZXh0IHRvIGRpc3BsYXkgaW4gY2FzZSBvZiBub3QgZGVmaW5lZCB2YWx1ZVxuICAgIGFuaW1hdGVkID0gZmFsc2UsIC8vIGlmIHRydWUsIHpvb21JbiBhbmltYXRpb24gaXMgdHJpZ2dlcmVkXG4gICAgdGFidWxhdGlvbiwgLy8gSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtXG4gICAgbGFiZWxUZXh0VmFyaWFudCwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHZhcmlhbnRcbiAgICBsYWJlbFRleHRQcm9taW5lbmNlLCAvLyBUbyBjaGFuZ2UgbGVmdCBjZWxsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgIG5vdGljZSwgLy8gVG8gZGlzcGxheSBhIGdyYXkgdGV4dCBiZWxvdyB0aGUgbGFiZWxcbiAgICBzdHJpa2VUaHJvdWdoLCAvLyBUbyBzdHJpa2UgdGhyb3VnaCB0aGUgcHJpY2VcbiAgfTogSXRlbVByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBsb2NhbGVzLCBmb3JtYXROdW1iZXIgfSA9IHVzZUVzdGltYXRlQ29zdCgpXG5cbiAgICBsZXQgaXRlcmF0aW9uOiBJdGVyYXRpb24gfCB1bmRlZmluZWRcblxuICAgIGlmIChub0l0ZXJhdGlvbikge1xuICAgICAgaXRlcmF0aW9uID0ge1xuICAgICAgICAuLi4ocmVjZWl2ZWRJdGVyYXRpb24gPz8geyB2YWx1ZTogMCB9KSxcbiAgICAgICAgdW5pdDogJ2hvdXJzJyxcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaXRlcmF0aW9uID0gcmVjZWl2ZWRJdGVyYXRpb25cbiAgICB9XG5cbiAgICBjb25zdCBwcmljZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKG1vbnRobHlQcmljZSAmJiBiYXNlUHJpY2UgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIG1vbnRobHlQcmljZSAvIG11bHRpcGxpZXIubW9udGhzXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBiYXNlUHJpY2VcbiAgICB9LCBbYmFzZVByaWNlLCBtb250aGx5UHJpY2VdKVxuXG4gICAgY29uc3QgdW5pdCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFiYXNlVW5pdCkge1xuICAgICAgICByZXR1cm4gbG9jYWxlc1snZXN0aW1hdGUuY29zdC51bml0cy5nYi5sYWJlbCddXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBiYXNlVW5pdFxuICAgIH0sIFtiYXNlVW5pdCwgbG9jYWxlc10pXG5cbiAgICBjb25zdCB7IGlzT3ZlcmxheSB9ID0gdXNlT3ZlcmxheSgpXG4gICAgY29uc3QgUm93ID0gaXNPdmVybGF5ID8gT3ZlcmxheVJvdyA6IFN0eWxlZFRyXG4gICAgY29uc3QgQ2VsbCA9IGlzT3ZlcmxheSA/IFN0eWxlZENlbGwud2l0aENvbXBvbmVudCgnZGl2JykgOiBTdHlsZWRDZWxsXG4gICAgY29uc3QgTGVmdFNpZGUgPSBpc092ZXJsYXkgPyAnZGl2JyA6IFN0eWxlZExlZnRTaWRlXG5cbiAgICBjb25zdCBbYW1vdW50LCBzZXRBbW91bnRdID0gdXNlU3RhdGUoY3VycmVudEFtb3VudClcbiAgICBjb25zdCBbaXNWYXJpYW50LCBzZXRJc1ZhcmlhbnRdID0gdXNlU3RhdGUoZmFsc2UpXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4gc2V0QW1vdW50KGN1cnJlbnRBbW91bnQpLCBbc2V0QW1vdW50LCBjdXJyZW50QW1vdW50XSlcbiAgICB1c2VFZmZlY3QoKCkgPT4gb25BbW91bnRDaGFuZ2U/LihhbW91bnQpLCBbb25BbW91bnRDaGFuZ2UsIGFtb3VudF0pXG5cbiAgICBjb25zdCBpdGVtQ2FsbGJhY2sgPSB1c2VDYWxsYmFjayhcbiAgICAgIChsb2NhbEFtb3VudDogbnVtYmVyLCBsb2NhbElzVmFyaWFudDogYm9vbGVhbikgPT4ge1xuICAgICAgICBzZXRBbW91bnQobG9jYWxBbW91bnQpXG4gICAgICAgIHNldElzVmFyaWFudChsb2NhbElzVmFyaWFudClcbiAgICAgIH0sXG4gICAgICBbc2V0QW1vdW50LCBzZXRJc1ZhcmlhbnRdLFxuICAgIClcblxuICAgIGNvbnN0IGlkID0gdXNlSWQoKVxuXG4gICAgLy8gV2UgcmVtb3ZlIEl0ZW0gZnJvbSBvYmplY3QgbGlzdCB3aGVuIEllbSBjb21wb25lbnQgdW5tb3VudCB0byBhdm9pZCBkdXBsaWNhdGVzXG4gICAgdXNlRWZmZWN0KFxuICAgICAgKCkgPT4gKCkgPT4gcHJvZHVjdHNDYWxsYmFjaz8ucmVtb3ZlKHsgaWQgfSksXG4gICAgICBbaWQsIHByb2R1Y3RzQ2FsbGJhY2tdLFxuICAgIClcblxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAoIWlzT3ZlcmxheSkge1xuICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPy5hZGQoe1xuICAgICAgICAgIGFtb3VudCxcbiAgICAgICAgICBhbW91bnRGcmVlLFxuICAgICAgICAgIGRpc2NvdW50LFxuICAgICAgICAgIGlkLFxuICAgICAgICAgIGlzVmFyaWFudCxcbiAgICAgICAgICBsb25nRnJhY3Rpb25EaWdpdHMsXG4gICAgICAgICAgbWF4QW1vdW50LFxuICAgICAgICAgIG5vSXRlcmF0aW9uLFxuICAgICAgICAgIHByaWNlLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0sIFtcbiAgICAgIHByaWNlLFxuICAgICAgZGlzY291bnQsXG4gICAgICBhbW91bnQsXG4gICAgICBpZCxcbiAgICAgIHByb2R1Y3RzQ2FsbGJhY2ssXG4gICAgICBtYXhBbW91bnQsXG4gICAgICBub0l0ZXJhdGlvbixcbiAgICAgIGlzVmFyaWFudCxcbiAgICAgIGFtb3VudEZyZWUsXG4gICAgICBpc092ZXJsYXksXG4gICAgICBsb25nRnJhY3Rpb25EaWdpdHMsXG4gICAgXSlcblxuICAgIGNvbnN0IGNvbXB1dGVkSXRlbVByaWNlID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIGFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGNvbXB1dGVkTWF4SXRlbVByaWNlID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICBhbW91bnQ6IG1heEFtb3VudCxcbiAgICAgICAgICBhbW91bnRGcmVlLFxuICAgICAgICAgIGRpc2NvdW50LFxuICAgICAgICAgIHByaWNlLFxuICAgICAgICAgIHRpbWVBbW91bnQ6IG5vSXRlcmF0aW9uID8gMSA6IChpdGVyYXRpb24/LnZhbHVlID8/IDEpLFxuICAgICAgICAgIHRpbWVVbml0OiBub0l0ZXJhdGlvbiA/ICdob3VycycgOiAoaXRlcmF0aW9uPy51bml0ID8/ICdob3VycycpLFxuICAgICAgICB9KSxcbiAgICAgIFtwcmljZSwgbWF4QW1vdW50LCBhbW91bnRGcmVlLCBpdGVyYXRpb24sIG5vSXRlcmF0aW9uLCBkaXNjb3VudF0sXG4gICAgKVxuXG4gICAgY29uc3QgZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBpZiAoIWl0ZXJhdGlvbj8udW5pdCkge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBsb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgPyBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nW2l0ZXJhdGlvbj8udW5pdF1cbiAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uPy51bml0XVxuICAgIH0sIFtpdGVyYXRpb24/LnVuaXQsIGxvbmdGcmFjdGlvbkRpZ2l0c10pXG5cbiAgICByZXR1cm4gKFxuICAgICAgPFJvd1xuICAgICAgICBoaWRlRnJvbU92ZXJsYXk9e2hpZGVGcm9tT3ZlcmxheX1cbiAgICAgICAgaXNGaXJzdEVsZW1lbnQ9e2lzRmlyc3RFbGVtZW50fVxuICAgICAgICBzaG91bGRCZUhpZGRlbj17c2hvdWxkQmVIaWRkZW59XG4gICAgICA+XG4gICAgICAgIDxDZWxsXG4gICAgICAgICAgaGFzQm9yZGVyPXshaXNMYXN0RWxlbWVudCAmJiAhbm9Cb3JkZXIgJiYgIWlzT3ZlcmxheX1cbiAgICAgICAgICB0YWJ1bGF0aW9uPXt0YWJ1bGF0aW9ufVxuICAgICAgICAgIHdpZHRoPXshaXNPdmVybGF5ID8gTUFYX0NFTExfV0lEVEggOiAnaW5oZXJpdCd9XG4gICAgICAgID5cbiAgICAgICAgICA8TGVmdFNpZGU+XG4gICAgICAgICAgICA8U3RhY2s+XG4gICAgICAgICAgICAgIDxTdGFjayBkaXJlY3Rpb249XCJyb3dcIj5cbiAgICAgICAgICAgICAgICA8VGV4dFxuICAgICAgICAgICAgICAgICAgYXM9XCJwXCJcbiAgICAgICAgICAgICAgICAgIHByb21pbmVuY2U9e2xhYmVsVGV4dFByb21pbmVuY2UgPz8gJ2RlZmF1bHQnfVxuICAgICAgICAgICAgICAgICAgdmFyaWFudD17bGFiZWxUZXh0VmFyaWFudCA/PyAnYm9keSd9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICB7dG9vbHRpcEluZm8gPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVG9vbHRpcCB0ZXh0PXt0b29sdGlwSW5mb30+XG4gICAgICAgICAgICAgICAgICAgICAgPEhlbHBDaXJjbGVPdXRsaW5lSWNvbiBzaXplPVwibWVkaXVtXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUb29sdGlwPlxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWREaXY+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge3N1YkxhYmVsICYmICFpc092ZXJsYXkgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dCBhcz1cInBcIiBpdGFsaWMgc2VudGltZW50PVwicHJpbWFyeVwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtzdWJMYWJlbH1cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVGV4dD5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgICB7ZGlzY291bnQgPiAwICYmIGRpc2NvdW50VGV4dCA/IChcbiAgICAgICAgICAgICAgICAgIDxTdHlsZWRCYWRnZVxuICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwid2FybmluZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtkaXNjb3VudFRleHR9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZEJhZGdlPlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICB7bm90aWNlID8gKFxuICAgICAgICAgICAgICAgIDxNYXhXaWR0aFRleHQgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIiB2YXJpYW50PVwiY2FwdGlvblwiPlxuICAgICAgICAgICAgICAgICAge25vdGljZX1cbiAgICAgICAgICAgICAgICA8L01heFdpZHRoVGV4dD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgPFN0eWxlZFJlc291cmNlTmFtZSBhbmltYXRlZD17YW5pbWF0ZWR9IGlzT3ZlcmxheT17aXNPdmVybGF5fT5cbiAgICAgICAgICAgICAge2lzRGVmaW5lZFxuICAgICAgICAgICAgICAgID8gQ2hpbGRyZW4ubWFwKGNoaWxkcmVuLCBjaGlsZCA9PlxuICAgICAgICAgICAgICAgICAgICBpc1ZhbGlkRWxlbWVudDxFeHRyYVByb3BzPihjaGlsZClcbiAgICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1DYWxsYmFjayxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4QW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgOiB0ZXh0Tm90RGVmaW5lZCB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0Lm5vdERlZmluZWQnXX1cbiAgICAgICAgICAgIDwvU3R5bGVkUmVzb3VyY2VOYW1lPlxuICAgICAgICAgIDwvTGVmdFNpZGU+XG4gICAgICAgIDwvQ2VsbD5cbiAgICAgICAgeyFpc092ZXJsYXkgPyAoXG4gICAgICAgICAgPFN0eWxlZFByaWNlQ2VsbFxuICAgICAgICAgICAgaGFzQm9yZGVyPXshaXNMYXN0RWxlbWVudCAmJiAhbm9Cb3JkZXJ9XG4gICAgICAgICAgICBwcmltYXJ5PXtpc1ByaW1hcnlCYWNrZ3JvdW5kfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHshbm9QcmljZSA/IChcbiAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8U3R5bGVOb1ByaWNlSXRlbVxuICAgICAgICAgICAgICAgICAgYXM9XCJwXCJcbiAgICAgICAgICAgICAgICAgIHByb21pbmVuY2U9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ3dlYWsnXG4gICAgICAgICAgICAgICAgICAgICAgOiAnZGVmYXVsdCdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD17XG4gICAgICAgICAgICAgICAgICAgIGNvbXB1dGVkSXRlbVByaWNlID09PSAwICYmIGNvbXB1dGVkTWF4SXRlbVByaWNlID09PSAwXG4gICAgICAgICAgICAgICAgICAgICAgPyAnbmV1dHJhbCdcbiAgICAgICAgICAgICAgICAgICAgICA6ICdwcmltYXJ5J1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgc3RyaWtlVGhyb3VnaD17c3RyaWtlVGhyb3VnaH1cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e25vSXRlcmF0aW9uVGV4dCA/ICdoZWFkaW5nU21hbGwnIDogJ2JvZHlTdHJvbmcnfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtwcmljZVRleHR9XG4gICAgICAgICAgICAgICAgICB7IXByaWNlVGV4dFxuICAgICAgICAgICAgICAgICAgICA/IGZvcm1hdE51bWJlcihjb21wdXRlZEl0ZW1QcmljZSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBmb3JtYXRNYXhpbXVtRnJhY3Rpb25EaWdpdHMsXG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICAgICAgICAgICAge25vSXRlcmF0aW9uVGV4dCA/IChcbiAgICAgICAgICAgICAgICAgICAgPFRleHQgYXM9XCJzcGFuXCIgc2VudGltZW50PVwicHJpbWFyeVwiIHZhcmlhbnQ9XCJib2R5U21hbGxcIj5cbiAgICAgICAgICAgICAgICAgICAgICAve25vSXRlcmF0aW9uVGV4dH1cbiAgICAgICAgICAgICAgICAgICAgPC9UZXh0PlxuICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICB7IXByaWNlVGV4dCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDBcbiAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIoY29tcHV0ZWRNYXhJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pfWBcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICAgICAgICAgIDwvU3R5bGVOb1ByaWNlSXRlbT5cbiAgICAgICAgICAgICAgICB7KGFtb3VudCAtIGFtb3VudEZyZWUgIT09IDEgJiYgY29tcHV0ZWRJdGVtUHJpY2UgPiAwKSB8fFxuICAgICAgICAgICAgICAgIChtYXhBbW91bnQgPiAwICYmIGNvbXB1dGVkTWF4SXRlbVByaWNlID4gMCkgPyAoXG4gICAgICAgICAgICAgICAgICA8VGV4dEFsaWduUmlnaHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcihcbiAgICAgICAgICAgICAgICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHByaWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGltZUFtb3VudDogMSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVVbml0OiAnaG91cnMnLFxuICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0cy5ob3VycyxcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICB7VElNRV9SRUxBVEVEX1VOSVQuaW5jbHVkZXModW5pdCBhcyBVbml0cylcbiAgICAgICAgICAgICAgICAgICAgICA/IGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LnVuaXRzLiR7dW5pdCBhcyBVbml0c30ubGFiZWxgXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgICAgICAgICAgICA6IGAvJHt1bml0fWB9XG4gICAgICAgICAgICAgICAgICAgIHshbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICA/IGAvJHtsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAnZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbCdcbiAgICAgICAgICAgICAgICAgICAgICAgIF0udG9Mb3dlckNhc2UoKX1gXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9UZXh0QWxpZ25SaWdodD5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICA8L1N0eWxlZFByaWNlQ2VsbD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICA8L1Jvdz5cbiAgICApXG4gIH0sXG4pXG4iXX0= */") : null, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdURFIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCB7IEhlbHBDaXJjbGVPdXRsaW5lSWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEJhZGdlLCBTdGFjaywgVGV4dCwgVG9vbHRpcCwgem9vbUluIH0gZnJvbSAnQHVsdHJhdmlvbGV0L3VpJ1xuaW1wb3J0IHR5cGUgeyBDb21wb25lbnRQcm9wcywgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBDaGlsZHJlbixcbiAgY2xvbmVFbGVtZW50LFxuICBpc1ZhbGlkRWxlbWVudCxcbiAgbWVtbyxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlSWQsXG4gIHVzZU1lbW8sXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCdcbmltcG9ydCB7XG4gIE92ZXJsYXlSb3csXG4gIHByaWNlQ2VsbCxcbiAgQ2VsbCBhcyBTdHlsZWRDZWxsLFxuICBTdHlsZWREaXYsXG4gIFN0eWxlZExlZnRTaWRlLFxuICBTdHlsZWRUcixcbn0gZnJvbSAnLi4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQge1xuICBNQVhfQ0VMTF9XSURUSCxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nLFxuICBtdWx0aXBsaWVyLFxufSBmcm9tICcuLi9jb25zdGFudHMnXG5pbXBvcnQgeyB1c2VFc3RpbWF0ZUNvc3QgfSBmcm9tICcuLi9Fc3RpbWF0ZUNvc3RQcm92aWRlcidcbmltcG9ydCB7IGNhbGN1bGF0ZVByaWNlIH0gZnJvbSAnLi4vaGVscGVyJ1xuaW1wb3J0IHsgdXNlT3ZlcmxheSB9IGZyb20gJy4uL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZVByb2R1Y3QsXG4gIEl0ZXJhdGlvbixcbiAgVW5pdHMsXG59IGZyb20gJy4uL3R5cGVzJ1xuXG5jb25zdCBUSU1FX1JFTEFURURfVU5JVDogVW5pdHNbXSA9IFtcbiAgJ3NlY29uZHMnLFxuICAnbWludXRlcycsXG4gICdob3VycycsXG4gICdkYXlzJyxcbiAgJ21vbnRocycsXG5dXG5cbmNvbnN0IFN0eWxlZFJlc291cmNlTmFtZSA9IHN0eWxlZCgnZGl2Jywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PiAhWydpc092ZXJsYXknLCAnYW5pbWF0ZWQnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPHtcbiAgaXNPdmVybGF5OiBib29sZWFuXG4gIGFuaW1hdGVkOiBib29sZWFuXG59PmBcbiAgdGV4dC1hbGlnbjogJHsoeyBpc092ZXJsYXkgfSkgPT4gKGlzT3ZlcmxheSA/ICdpbml0aWFsJyA6ICdyaWdodCcpfTtcblxuICAkeyh7IGlzT3ZlcmxheSwgYW5pbWF0ZWQgfSkgPT5cbiAgICBpc092ZXJsYXlcbiAgICAgID8gY3NzYFxuICAgICAgICAgIGhlaWdodDogNDhweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFuaW1hdGlvbjogJHthbmltYXRlZCA/IGNzc2A4MDBtcyAke3pvb21Jbn1gIDogJyd9O1xuICAgICAgICBgXG4gICAgICA6IG51bGx9XG5gXG5cbmNvbnN0IFN0eWxlZEJhZGdlID0gc3R5bGVkKEJhZGdlKWBcbiAgbWFyZ2luLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IE1heFdpZHRoVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWF4LXdpZHRoOiA3NSU7XG5gXG5cbmNvbnN0IFRleHRBbGlnblJpZ2h0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkVG9vbHRpcCA9IHN0eWxlZChUb29sdGlwKWBcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuYFxuXG5jb25zdCBTdHlsZWRQcmljZUNlbGwgPSBzdHlsZWQoU3R5bGVkQ2VsbClgXG4gICR7KHsgdGhlbWUgfSkgPT4gcHJpY2VDZWxsKHRoZW1lKX1cbmBcblxudHlwZSBFeHRyYVByb3BzID0ge1xuICBpdGVtQ2FsbGJhY2s6IChhbW91bnQ6IG51bWJlciwgaXNWYXJpYW50OiBib29sZWFuKSA9PiB2b2lkXG4gIGFtb3VudDogbnVtYmVyXG4gIG1heEFtb3VudDogbnVtYmVyXG4gIHVuaXQ6IHN0cmluZ1xufVxuXG50eXBlIEl0ZW1Qcm9wcyA9IHtcbiAgYW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcmUgZnJlZS4gSXQgd2lsbCBiZSBkZWR1Y3RlZCB0byBwcmljZSBvZiB0aGUgaXRlbS5cbiAgICovXG4gIGFtb3VudEZyZWU/OiBudW1iZXJcbiAgLyoqXG4gICAqIGlmIHRydWUsIHpvb21JbiBhbmltYXRpb24gaXMgdHJpZ2dlcmVkXG4gICAqL1xuICBhbmltYXRlZD86IGJvb2xlYW5cbiAgY2hpbGRyZW4/OiBSZWFjdE5vZGVcbiAgZGlzY291bnQ/OiBudW1iZXJcbiAgZGlzY291bnRUZXh0Pzogc3RyaW5nXG4gIC8qKlxuICAgKiBIaWRlIGVsZW1lbnQgZnJvbSBvdmVybGF5XG4gICAqL1xuICBoaWRlRnJvbU92ZXJsYXk/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRGVmaW5lZD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIERvIG5vdCBzZXQgdGhpcyBwcm9wLCBpdCBpcyB0cmFuc2ZlcnJlZCBmcm9tIHBhcmVudFxuICAgKi9cbiAgaXNGaXJzdEVsZW1lbnQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzTGFzdEVsZW1lbnQ/OiBib29sZWFuXG4gIGlzUHJpbWFyeUJhY2tncm91bmQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGl0ZXJhdGlvbj86IEl0ZXJhdGlvblxuICAvKipcbiAgICogU3RyaW5nIHRoYXQgaXMgZGlzcGxheWVkIG9uIGxlZnQgcGFydCBvZiB0aGUgaXRlbSwgaXQgZGVmaW5lcyB0aGUgaXRlbVxuICAgKi9cbiAgbGFiZWw/OiBSZWFjdE5vZGVcbiAgLyoqXG4gICAqIENoYW5nZXMgbGFiZWwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAqL1xuICBsYWJlbFRleHRWYXJpYW50PzogQ29tcG9uZW50UHJvcHM8dHlwZW9mIFRleHQ+Wyd2YXJpYW50J11cbiAgLyoqXG4gICAqIENoYW5nZXMgbGFiZWwgdHlwb2dyYXBoeSBwcm9taW5lbmNlXG4gICAqL1xuICBsYWJlbFRleHRQcm9taW5lbmNlPzogQ29tcG9uZW50UHJvcHM8dHlwZW9mIFRleHQ+Wydwcm9taW5lbmNlJ11cbiAgLyoqXG4gICAqIElmIHlvdXIgcHJpY2UgaGFzIGEgbG90IG9mIG51bWJlciBhZnRlciBkZWNpbWFsIHBvaW50IChleDogMC4wMDAwMDc2KSAtIHVwIDggZnJhY3Rpb24gZGlnaXRzXG4gICAqL1xuICBsb25nRnJhY3Rpb25EaWdpdHM/OiBib29sZWFuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSByYW5nZSBwcmljZSB3aXRoIFthbW91bnQgLSBtYXhBbW91bnRdIHZhbHVlcyBhbmQgcHJpY2VzXG4gICAqL1xuICBtYXhBbW91bnQ/OiBudW1iZXJcbiAgLyoqXG4gICAqIFByaWNlIHBlciBtb250aFxuICAgKi9cbiAgbW9udGhseVByaWNlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBSZW1vdmUgYm9yZGVyIGJvdHRvbSBvZiB0aGUgaXRlbVxuICAgKi9cbiAgbm9Cb3JkZXI/OiBib29sZWFuXG4gIC8qKlxuICAgKiBJZiB0aGUgcHJpY2Ugb2YgdGhlIGl0ZW0gaXMgbm90IGJhc2VkIG9uIHRpbWUgZW5hYmxlIHRoaXMgcHJvcC4gZXg6IDVrZyBvZiBjaG9jb2xhdGUgaXMgc2FtZSBwcmljZSBvdmVyIDEgbW9udGggb3IgMSBob3VyLlxuICAgKi9cbiAgbm9JdGVyYXRpb24/OiBib29sZWFuXG4gIG5vSXRlcmF0aW9uVGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogUmVtb3ZlIHRoZSBwcmljZSBvbiB0aGUgcmlnaHQgc2VjdGlvbiBvZiB0aGUgdGFibGVcbiAgICovXG4gIG5vUHJpY2U/OiBib29sZWFuXG4gIC8qKlxuICAgKiBOb3RpY2UgdG8gZGlzcGxheSBiZWxvdyB0aGUgbGFiZWxcbiAgICovXG4gIG5vdGljZT86IHN0cmluZ1xuICBvbkFtb3VudENoYW5nZT86IChhbW91bnQ6IG51bWJlcikgPT4gdm9pZFxuICAvKipcbiAgICogSG91cmx5IHByaWNlIGZvciBvbmUgdW5pdFxuICAgKi9cbiAgcHJpY2U/OiBudW1iZXJcbiAgcHJpY2VUZXh0PzogUmVhY3ROb2RlXG4gIHByb2R1Y3RzQ2FsbGJhY2s/OiB7XG4gICAgYWRkOiAocHJvZHVjdDogRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gICAgcmVtb3ZlOiAocHJvZHVjdDogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICB9XG4gIC8qKlxuICAgKiBIaWRlIGl0ZW0gZnJvbSBvdmVybGF5IGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbFxuICAgKi9cbiAgc2hvdWxkQmVIaWRkZW4/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEaXNwbGF5IGEgY29tcGxlbWVudGFyeSB0ZXh0IG9uIHRoZSByaWdodCBvZiB0aGUgbGFiZWxcbiAgICovXG4gIHN1YkxhYmVsPzogc3RyaW5nXG4gIC8qKlxuICAgKiBJbmNyZWFzZSBsZWZ0IHBhZGRpbmcgb2YgdGhlIGl0ZW0gbGlrZVxuICAgKi9cbiAgdGFidWxhdGlvbj86IG51bWJlclxuICAvKipcbiAgICogVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICovXG4gIHRleHROb3REZWZpbmVkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBEaXNwbGF5IG5lYXIgbGFiZWwsIGFuIGljb24gd2l0aCBhIHRvb2x0aXAgdGhhdCBjb250YWlucyB5b3VyIHRleHRcbiAgICovXG4gIHRvb2x0aXBJbmZvPzogc3RyaW5nXG4gIC8qKlxuICAgKiBVbml0IG9mIHlvdXIgaXRlbSwgZXhhbXBsZXM6IEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgKi9cbiAgdW5pdD86XG4gICAgfCAnbWInXG4gICAgfCAnZ2InXG4gICAgfCAndGInXG4gICAgfCAnc2Vjb25kcydcbiAgICB8ICdtaW51dGVzJ1xuICAgIHwgJ2hvdXJzJ1xuICAgIHwgJ2RheXMnXG4gICAgfCAnbW9udGhzJ1xuICAgIHwgJ3llYXJzJ1xuICAgIC8vIEFsbG93IGEgc3RyaW5nIGZvciB1bml0IGJ1dCBrZWVwIGF1dG9jb21wbGV0ZSBmb3IgdGhlIGFib3ZlIHZhbHVlc1xuICAgIHwgKHN0cmluZyAmIE5vbk51bGxhYmxlPHVua25vd24+KVxuICAvKlxuICAgKiBUbyBzdHJpa2UgdGhyb3VnaCB0aGUgcHJpY2VcbiAgICovXG4gIHN0cmlrZVRocm91Z2g/OiBib29sZWFuXG59XG5cbmNvbnN0IFN0eWxlTm9QcmljZUl0ZW0gPSBzdHlsZWQoVGV4dClgXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuYFxuXG5leHBvcnQgY29uc3QgSXRlbSA9IG1lbW8oXG4gICh7XG4gICAgZGlzY291bnQgPSAwLFxuICAgIHByaWNlVGV4dCxcbiAgICBkaXNjb3VudFRleHQsXG4gICAgbGFiZWwsXG4gICAgdG9vbHRpcEluZm8sIC8vIFNob3dzIGFuIGljb24gd2l0aCB0b29sdGlwIHRoYXQgY29udGFpbnMgdGhpcyB0ZXh0XG4gICAgc3ViTGFiZWwgPSAnJywgLy8gVXN1YWxseSB1c2VkIGZvciBzaG93aW5nIGFtb3VudCB0aGF0IGlzIGZyZWVcbiAgICBwcmljZTogYmFzZVByaWNlID0gMCwgLy8gSG91cmx5IHByaWNlIGZvciBvbmUgdW5pdFxuICAgIG1vbnRobHlQcmljZSA9IDAsIC8vIFByaWNlIHBlciBtb250aFxuICAgIHVuaXQ6IGJhc2VVbml0LCAvLyBDYW4gYmUgR0IsIE1CLCBOb2RlLCBRdWVyaWVzLCBldGMuXG4gICAgYW1vdW50OiBjdXJyZW50QW1vdW50ID0gMSwgLy8gQ3VycmVudCBudW1iZXIgb2YgaXRlbXNcbiAgICBvbkFtb3VudENoYW5nZSxcbiAgICBhbW91bnRGcmVlID0gMCwgLy8gQW1vdW50IHRoYXQgaXMgZnJlZSAtIG9mZmVyZWQgYnkgY29tcGFueVxuICAgIG1heEFtb3VudCA9IDAsIC8vIE1heCBhbW91bnQgLSB1c2VkIGZvciBrdWJlcm5ldGVzIGZvciBleGFtcGxlXG4gICAgbG9uZ0ZyYWN0aW9uRGlnaXRzID0gZmFsc2UsIC8vIEluIGNhc2UgcHJpY2UgaXMgcmVhbGx5IGxvbmcgMC4wMDAwMDc2IC0gdXAgNyBmcmFjdGlvbiBkaWdpdHNcbiAgICBub0l0ZXJhdGlvbiA9IGZhbHNlLCAvLyBpZiBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIChleDogZG93bmxvYWQsIHVwbG9hZCwgdHJhbnNmZXIpXG4gICAgbm9JdGVyYXRpb25UZXh0LFxuICAgIG5vQm9yZGVyLCAvLyByZW1vdmUgdGhlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICBub1ByaWNlLCAvLyByZW1vdmUgdGhlIHByaWNlIG9uIHJpZ2h0IHNpZGUgb2YgdGhlIHRhYmxlXG4gICAgaXNEZWZpbmVkID0gdHJ1ZSxcbiAgICBjaGlsZHJlbiA9IG51bGwsXG4gICAgaXNGaXJzdEVsZW1lbnQgPSBmYWxzZSxcbiAgICBpc0xhc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNQcmltYXJ5QmFja2dyb3VuZCA9IGZhbHNlLFxuICAgIHByb2R1Y3RzQ2FsbGJhY2ssXG4gICAgaXRlcmF0aW9uOiByZWNlaXZlZEl0ZXJhdGlvbiwgLy8gT2JqZWN0IGZyb20gcGFyZW50IHRoYXQgY29udGFpbnMgdGltZSBwZXJpb2QgKGhvdXJzLCBkYXlzLCBtb250aHMpXG4gICAgc2hvdWxkQmVIaWRkZW4gPSBmYWxzZSwgLy8gSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICBoaWRlRnJvbU92ZXJsYXkgPSBmYWxzZSwgLy8gSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheSBpbiBhbnkgY2FzZVxuICAgIHRleHROb3REZWZpbmVkLCAvLyBUZXh0IHRvIGRpc3BsYXkgaW4gY2FzZSBvZiBub3QgZGVmaW5lZCB2YWx1ZVxuICAgIGFuaW1hdGVkID0gZmFsc2UsIC8vIGlmIHRydWUsIHpvb21JbiBhbmltYXRpb24gaXMgdHJpZ2dlcmVkXG4gICAgdGFidWxhdGlvbiwgLy8gSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtXG4gICAgbGFiZWxUZXh0VmFyaWFudCwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHZhcmlhbnRcbiAgICBsYWJlbFRleHRQcm9taW5lbmNlLCAvLyBUbyBjaGFuZ2UgbGVmdCBjZWxsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgIG5vdGljZSwgLy8gVG8gZGlzcGxheSBhIGdyYXkgdGV4dCBiZWxvdyB0aGUgbGFiZWxcbiAgICBzdHJpa2VUaHJvdWdoLCAvLyBUbyBzdHJpa2UgdGhyb3VnaCB0aGUgcHJpY2VcbiAgfTogSXRlbVByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBsb2NhbGVzLCBmb3JtYXROdW1iZXIgfSA9IHVzZUVzdGltYXRlQ29zdCgpXG5cbiAgICBsZXQgaXRlcmF0aW9uOiBJdGVyYXRpb24gfCB1bmRlZmluZWRcblxuICAgIGlmIChub0l0ZXJhdGlvbikge1xuICAgICAgaXRlcmF0aW9uID0ge1xuICAgICAgICAuLi4ocmVjZWl2ZWRJdGVyYXRpb24gPz8geyB2YWx1ZTogMCB9KSxcbiAgICAgICAgdW5pdDogJ2hvdXJzJyxcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaXRlcmF0aW9uID0gcmVjZWl2ZWRJdGVyYXRpb25cbiAgICB9XG5cbiAgICBjb25zdCBwcmljZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKG1vbnRobHlQcmljZSAmJiBiYXNlUHJpY2UgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIG1vbnRobHlQcmljZSAvIG11bHRpcGxpZXIubW9udGhzXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBiYXNlUHJpY2VcbiAgICB9LCBbYmFzZVByaWNlLCBtb250aGx5UHJpY2VdKVxuXG4gICAgY29uc3QgdW5pdCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFiYXNlVW5pdCkge1xuICAgICAgICByZXR1cm4gbG9jYWxlc1snZXN0aW1hdGUuY29zdC51bml0cy5nYi5sYWJlbCddXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBiYXNlVW5pdFxuICAgIH0sIFtiYXNlVW5pdCwgbG9jYWxlc10pXG5cbiAgICBjb25zdCB7IGlzT3ZlcmxheSB9ID0gdXNlT3ZlcmxheSgpXG4gICAgY29uc3QgUm93ID0gaXNPdmVybGF5ID8gT3ZlcmxheVJvdyA6IFN0eWxlZFRyXG4gICAgY29uc3QgQ2VsbCA9IGlzT3ZlcmxheSA/IFN0eWxlZENlbGwud2l0aENvbXBvbmVudCgnZGl2JykgOiBTdHlsZWRDZWxsXG4gICAgY29uc3QgTGVmdFNpZGUgPSBpc092ZXJsYXkgPyAnZGl2JyA6IFN0eWxlZExlZnRTaWRlXG5cbiAgICBjb25zdCBbYW1vdW50LCBzZXRBbW91bnRdID0gdXNlU3RhdGUoY3VycmVudEFtb3VudClcbiAgICBjb25zdCBbaXNWYXJpYW50LCBzZXRJc1ZhcmlhbnRdID0gdXNlU3RhdGUoZmFsc2UpXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4gc2V0QW1vdW50KGN1cnJlbnRBbW91bnQpLCBbc2V0QW1vdW50LCBjdXJyZW50QW1vdW50XSlcbiAgICB1c2VFZmZlY3QoKCkgPT4gb25BbW91bnRDaGFuZ2U/LihhbW91bnQpLCBbb25BbW91bnRDaGFuZ2UsIGFtb3VudF0pXG5cbiAgICBjb25zdCBpdGVtQ2FsbGJhY2sgPSB1c2VDYWxsYmFjayhcbiAgICAgIChsb2NhbEFtb3VudDogbnVtYmVyLCBsb2NhbElzVmFyaWFudDogYm9vbGVhbikgPT4ge1xuICAgICAgICBzZXRBbW91bnQobG9jYWxBbW91bnQpXG4gICAgICAgIHNldElzVmFyaWFudChsb2NhbElzVmFyaWFudClcbiAgICAgIH0sXG4gICAgICBbc2V0QW1vdW50LCBzZXRJc1ZhcmlhbnRdLFxuICAgIClcblxuICAgIGNvbnN0IGlkID0gdXNlSWQoKVxuXG4gICAgLy8gV2UgcmVtb3ZlIEl0ZW0gZnJvbSBvYmplY3QgbGlzdCB3aGVuIEllbSBjb21wb25lbnQgdW5tb3VudCB0byBhdm9pZCBkdXBsaWNhdGVzXG4gICAgdXNlRWZmZWN0KFxuICAgICAgKCkgPT4gKCkgPT4gcHJvZHVjdHNDYWxsYmFjaz8ucmVtb3ZlKHsgaWQgfSksXG4gICAgICBbaWQsIHByb2R1Y3RzQ2FsbGJhY2tdLFxuICAgIClcblxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAoIWlzT3ZlcmxheSkge1xuICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPy5hZGQoe1xuICAgICAgICAgIGFtb3VudCxcbiAgICAgICAgICBhbW91bnRGcmVlLFxuICAgICAgICAgIGRpc2NvdW50LFxuICAgICAgICAgIGlkLFxuICAgICAgICAgIGlzVmFyaWFudCxcbiAgICAgICAgICBsb25nRnJhY3Rpb25EaWdpdHMsXG4gICAgICAgICAgbWF4QW1vdW50LFxuICAgICAgICAgIG5vSXRlcmF0aW9uLFxuICAgICAgICAgIHByaWNlLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0sIFtcbiAgICAgIHByaWNlLFxuICAgICAgZGlzY291bnQsXG4gICAgICBhbW91bnQsXG4gICAgICBpZCxcbiAgICAgIHByb2R1Y3RzQ2FsbGJhY2ssXG4gICAgICBtYXhBbW91bnQsXG4gICAgICBub0l0ZXJhdGlvbixcbiAgICAgIGlzVmFyaWFudCxcbiAgICAgIGFtb3VudEZyZWUsXG4gICAgICBpc092ZXJsYXksXG4gICAgICBsb25nRnJhY3Rpb25EaWdpdHMsXG4gICAgXSlcblxuICAgIGNvbnN0IGNvbXB1dGVkSXRlbVByaWNlID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIGFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGNvbXB1dGVkTWF4SXRlbVByaWNlID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICBhbW91bnQ6IG1heEFtb3VudCxcbiAgICAgICAgICBhbW91bnRGcmVlLFxuICAgICAgICAgIGRpc2NvdW50LFxuICAgICAgICAgIHByaWNlLFxuICAgICAgICAgIHRpbWVBbW91bnQ6IG5vSXRlcmF0aW9uID8gMSA6IChpdGVyYXRpb24/LnZhbHVlID8/IDEpLFxuICAgICAgICAgIHRpbWVVbml0OiBub0l0ZXJhdGlvbiA/ICdob3VycycgOiAoaXRlcmF0aW9uPy51bml0ID8/ICdob3VycycpLFxuICAgICAgICB9KSxcbiAgICAgIFtwcmljZSwgbWF4QW1vdW50LCBhbW91bnRGcmVlLCBpdGVyYXRpb24sIG5vSXRlcmF0aW9uLCBkaXNjb3VudF0sXG4gICAgKVxuXG4gICAgY29uc3QgZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBpZiAoIWl0ZXJhdGlvbj8udW5pdCkge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBsb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgPyBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nW2l0ZXJhdGlvbj8udW5pdF1cbiAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uPy51bml0XVxuICAgIH0sIFtpdGVyYXRpb24/LnVuaXQsIGxvbmdGcmFjdGlvbkRpZ2l0c10pXG5cbiAgICByZXR1cm4gKFxuICAgICAgPFJvd1xuICAgICAgICBoaWRlRnJvbU92ZXJsYXk9e2hpZGVGcm9tT3ZlcmxheX1cbiAgICAgICAgaXNGaXJzdEVsZW1lbnQ9e2lzRmlyc3RFbGVtZW50fVxuICAgICAgICBzaG91bGRCZUhpZGRlbj17c2hvdWxkQmVIaWRkZW59XG4gICAgICA+XG4gICAgICAgIDxDZWxsXG4gICAgICAgICAgaGFzQm9yZGVyPXshaXNMYXN0RWxlbWVudCAmJiAhbm9Cb3JkZXIgJiYgIWlzT3ZlcmxheX1cbiAgICAgICAgICB0YWJ1bGF0aW9uPXt0YWJ1bGF0aW9ufVxuICAgICAgICAgIHdpZHRoPXshaXNPdmVybGF5ID8gTUFYX0NFTExfV0lEVEggOiAnaW5oZXJpdCd9XG4gICAgICAgID5cbiAgICAgICAgICA8TGVmdFNpZGU+XG4gICAgICAgICAgICA8U3RhY2s+XG4gICAgICAgICAgICAgIDxTdGFjayBkaXJlY3Rpb249XCJyb3dcIj5cbiAgICAgICAgICAgICAgICA8VGV4dFxuICAgICAgICAgICAgICAgICAgYXM9XCJwXCJcbiAgICAgICAgICAgICAgICAgIHByb21pbmVuY2U9e2xhYmVsVGV4dFByb21pbmVuY2UgPz8gJ2RlZmF1bHQnfVxuICAgICAgICAgICAgICAgICAgdmFyaWFudD17bGFiZWxUZXh0VmFyaWFudCA/PyAnYm9keSd9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge2xhYmVsfVxuICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICB7dG9vbHRpcEluZm8gPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVG9vbHRpcCB0ZXh0PXt0b29sdGlwSW5mb30+XG4gICAgICAgICAgICAgICAgICAgICAgPEhlbHBDaXJjbGVPdXRsaW5lSWNvbiBzaXplPVwibWVkaXVtXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUb29sdGlwPlxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWREaXY+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge3N1YkxhYmVsICYmICFpc092ZXJsYXkgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dCBhcz1cInBcIiBpdGFsaWMgc2VudGltZW50PVwicHJpbWFyeVwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtzdWJMYWJlbH1cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVGV4dD5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgICB7ZGlzY291bnQgPiAwICYmIGRpc2NvdW50VGV4dCA/IChcbiAgICAgICAgICAgICAgICAgIDxTdHlsZWRCYWRnZVxuICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwid2FybmluZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtkaXNjb3VudFRleHR9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZEJhZGdlPlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICB7bm90aWNlID8gKFxuICAgICAgICAgICAgICAgIDxNYXhXaWR0aFRleHQgYXM9XCJwXCIgcHJvbWluZW5jZT1cIndlYWtcIiB2YXJpYW50PVwiY2FwdGlvblwiPlxuICAgICAgICAgICAgICAgICAge25vdGljZX1cbiAgICAgICAgICAgICAgICA8L01heFdpZHRoVGV4dD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgPFN0eWxlZFJlc291cmNlTmFtZSBhbmltYXRlZD17YW5pbWF0ZWR9IGlzT3ZlcmxheT17aXNPdmVybGF5fT5cbiAgICAgICAgICAgICAge2lzRGVmaW5lZFxuICAgICAgICAgICAgICAgID8gQ2hpbGRyZW4ubWFwKGNoaWxkcmVuLCBjaGlsZCA9PlxuICAgICAgICAgICAgICAgICAgICBpc1ZhbGlkRWxlbWVudDxFeHRyYVByb3BzPihjaGlsZClcbiAgICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1DYWxsYmFjayxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4QW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgOiB0ZXh0Tm90RGVmaW5lZCB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0Lm5vdERlZmluZWQnXX1cbiAgICAgICAgICAgIDwvU3R5bGVkUmVzb3VyY2VOYW1lPlxuICAgICAgICAgIDwvTGVmdFNpZGU+XG4gICAgICAgIDwvQ2VsbD5cbiAgICAgICAgeyFpc092ZXJsYXkgPyAoXG4gICAgICAgICAgPFN0eWxlZFByaWNlQ2VsbFxuICAgICAgICAgICAgaGFzQm9yZGVyPXshaXNMYXN0RWxlbWVudCAmJiAhbm9Cb3JkZXJ9XG4gICAgICAgICAgICBwcmltYXJ5PXtpc1ByaW1hcnlCYWNrZ3JvdW5kfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHshbm9QcmljZSA/IChcbiAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8U3R5bGVOb1ByaWNlSXRlbVxuICAgICAgICAgICAgICAgICAgYXM9XCJwXCJcbiAgICAgICAgICAgICAgICAgIHByb21pbmVuY2U9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ3dlYWsnXG4gICAgICAgICAgICAgICAgICAgICAgOiAnZGVmYXVsdCdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD17XG4gICAgICAgICAgICAgICAgICAgIGNvbXB1dGVkSXRlbVByaWNlID09PSAwICYmIGNvbXB1dGVkTWF4SXRlbVByaWNlID09PSAwXG4gICAgICAgICAgICAgICAgICAgICAgPyAnbmV1dHJhbCdcbiAgICAgICAgICAgICAgICAgICAgICA6ICdwcmltYXJ5J1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgc3RyaWtlVGhyb3VnaD17c3RyaWtlVGhyb3VnaH1cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e25vSXRlcmF0aW9uVGV4dCA/ICdoZWFkaW5nU21hbGwnIDogJ2JvZHlTdHJvbmcnfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtwcmljZVRleHR9XG4gICAgICAgICAgICAgICAgICB7IXByaWNlVGV4dFxuICAgICAgICAgICAgICAgICAgICA/IGZvcm1hdE51bWJlcihjb21wdXRlZEl0ZW1QcmljZSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBmb3JtYXRNYXhpbXVtRnJhY3Rpb25EaWdpdHMsXG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICAgICAgICAgICAge25vSXRlcmF0aW9uVGV4dCA/IChcbiAgICAgICAgICAgICAgICAgICAgPFRleHQgYXM9XCJzcGFuXCIgc2VudGltZW50PVwicHJpbWFyeVwiIHZhcmlhbnQ9XCJib2R5U21hbGxcIj5cbiAgICAgICAgICAgICAgICAgICAgICAve25vSXRlcmF0aW9uVGV4dH1cbiAgICAgICAgICAgICAgICAgICAgPC9UZXh0PlxuICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICB7IXByaWNlVGV4dCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDBcbiAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIoY29tcHV0ZWRNYXhJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pfWBcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICAgICAgICAgIDwvU3R5bGVOb1ByaWNlSXRlbT5cbiAgICAgICAgICAgICAgICB7KGFtb3VudCAtIGFtb3VudEZyZWUgIT09IDEgJiYgY29tcHV0ZWRJdGVtUHJpY2UgPiAwKSB8fFxuICAgICAgICAgICAgICAgIChtYXhBbW91bnQgPiAwICYmIGNvbXB1dGVkTWF4SXRlbVByaWNlID4gMCkgPyAoXG4gICAgICAgICAgICAgICAgICA8VGV4dEFsaWduUmlnaHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcihcbiAgICAgICAgICAgICAgICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHByaWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGltZUFtb3VudDogMSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVVbml0OiAnaG91cnMnLFxuICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0cy5ob3VycyxcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICB7VElNRV9SRUxBVEVEX1VOSVQuaW5jbHVkZXModW5pdCBhcyBVbml0cylcbiAgICAgICAgICAgICAgICAgICAgICA/IGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LnVuaXRzLiR7dW5pdCBhcyBVbml0c30ubGFiZWxgXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgICAgICAgICAgICA6IGAvJHt1bml0fWB9XG4gICAgICAgICAgICAgICAgICAgIHshbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICA/IGAvJHtsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAnZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbCdcbiAgICAgICAgICAgICAgICAgICAgICAgIF0udG9Mb3dlckNhc2UoKX1gXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9UZXh0QWxpZ25SaWdodD5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICA8L1N0eWxlZFByaWNlQ2VsbD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICA8L1Jvdz5cbiAgICApXG4gIH0sXG4pXG4iXX0= */"));
30
- const StyledBadge = /* @__PURE__ */ _styled(Badge, process.env.NODE_ENV === "production" ? {
31
- target: "e1kzy2rr6"
32
- } : {
33
- target: "e1kzy2rr6",
34
- label: "StyledBadge"
35
- })("margin-left:", ({
36
- theme
37
- }) => theme.space["1"], ";align-self:center;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUVpQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Db21wb25lbnRzL0l0ZW0udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBIZWxwQ2lyY2xlT3V0bGluZUljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgeyBCYWRnZSwgU3RhY2ssIFRleHQsIFRvb2x0aXAsIHpvb21JbiB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUlkLFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBPdmVybGF5Um93LFxuICBwcmljZUNlbGwsXG4gIENlbGwgYXMgU3R5bGVkQ2VsbCxcbiAgU3R5bGVkRGl2LFxuICBTdHlsZWRMZWZ0U2lkZSxcbiAgU3R5bGVkVHIsXG59IGZyb20gJy4uL2NvbXBvbmVudFN0eWxlJ1xuaW1wb3J0IHtcbiAgTUFYX0NFTExfV0lEVEgsXG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyxcbiAgbXVsdGlwbGllcixcbn0gZnJvbSAnLi4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4uL2hlbHBlcidcbmltcG9ydCB7IHVzZU92ZXJsYXkgfSBmcm9tICcuLi9PdmVybGF5Q29udGV4dCdcbmltcG9ydCB0eXBlIHtcbiAgQmFyZUVzdGltYXRlUHJvZHVjdCxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuLi90eXBlcydcblxuY29uc3QgVElNRV9SRUxBVEVEX1VOSVQ6IFVuaXRzW10gPSBbXG4gICdzZWNvbmRzJyxcbiAgJ21pbnV0ZXMnLFxuICAnaG91cnMnLFxuICAnZGF5cycsXG4gICdtb250aHMnLFxuXVxuXG5jb25zdCBTdHlsZWRSZXNvdXJjZU5hbWUgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnaXNPdmVybGF5JywgJ2FuaW1hdGVkJ10uaW5jbHVkZXMocHJvcCksXG59KTx7XG4gIGlzT3ZlcmxheTogYm9vbGVhblxuICBhbmltYXRlZDogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246ICR7KHsgaXNPdmVybGF5IH0pID0+IChpc092ZXJsYXkgPyAnaW5pdGlhbCcgOiAncmlnaHQnKX07XG5cbiAgJHsoeyBpc092ZXJsYXksIGFuaW1hdGVkIH0pID0+XG4gICAgaXNPdmVybGF5XG4gICAgICA/IGNzc2BcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbmltYXRpb246ICR7YW5pbWF0ZWQgPyBjc3NgODAwbXMgJHt6b29tSW59YCA6ICcnfTtcbiAgICAgICAgYFxuICAgICAgOiBudWxsfVxuYFxuXG5jb25zdCBTdHlsZWRCYWRnZSA9IHN0eWxlZChCYWRnZSlgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5gXG5cbmNvbnN0IFN0eWxlZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuYFxuXG5jb25zdCBNYXhXaWR0aFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1heC13aWR0aDogNzUlO1xuYFxuXG5jb25zdCBUZXh0QWxpZ25SaWdodCA9IHN0eWxlZChUZXh0KWBcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5gXG5cbmNvbnN0IFN0eWxlZFRvb2x0aXAgPSBzdHlsZWQoVG9vbHRpcClgXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKFN0eWxlZENlbGwpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG5gXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXRlbUNhbGxiYWNrOiAoYW1vdW50OiBudW1iZXIsIGlzVmFyaWFudDogYm9vbGVhbikgPT4gdm9pZFxuICBhbW91bnQ6IG51bWJlclxuICBtYXhBbW91bnQ6IG51bWJlclxuICB1bml0OiBzdHJpbmdcbn1cblxudHlwZSBJdGVtUHJvcHMgPSB7XG4gIGFtb3VudD86IG51bWJlclxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXJlIGZyZWUuIEl0IHdpbGwgYmUgZGVkdWN0ZWQgdG8gcHJpY2Ugb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBhbW91bnRGcmVlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgYW5pbWF0ZWQ/OiBib29sZWFuXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlXG4gIGRpc2NvdW50PzogbnVtYmVyXG4gIGRpc2NvdW50VGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheVxuICAgKi9cbiAgaGlkZUZyb21PdmVybGF5PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0RlZmluZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRmlyc3RFbGVtZW50PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBpc1ByaW1hcnlCYWNrZ3JvdW5kPzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgLyoqXG4gICAqIFN0cmluZyB0aGF0IGlzIGRpc3BsYXllZCBvbiBsZWZ0IHBhcnQgb2YgdGhlIGl0ZW0sIGl0IGRlZmluZXMgdGhlIGl0ZW1cbiAgICovXG4gIGxhYmVsPzogUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgdmFyaWFudFxuICAgKi9cbiAgbGFiZWxUZXh0VmFyaWFudD86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsndmFyaWFudCddXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgKi9cbiAgbGFiZWxUZXh0UHJvbWluZW5jZT86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsncHJvbWluZW5jZSddXG4gIC8qKlxuICAgKiBJZiB5b3VyIHByaWNlIGhhcyBhIGxvdCBvZiBudW1iZXIgYWZ0ZXIgZGVjaW1hbCBwb2ludCAoZXg6IDAuMDAwMDA3NikgLSB1cCA4IGZyYWN0aW9uIGRpZ2l0c1xuICAgKi9cbiAgbG9uZ0ZyYWN0aW9uRGlnaXRzPzogYm9vbGVhblxuICAvKipcbiAgICogQ3JlYXRlIGEgcmFuZ2UgcHJpY2Ugd2l0aCBbYW1vdW50IC0gbWF4QW1vdW50XSB2YWx1ZXMgYW5kIHByaWNlc1xuICAgKi9cbiAgbWF4QW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBQcmljZSBwZXIgbW9udGhcbiAgICovXG4gIG1vbnRobHlQcmljZT86IG51bWJlclxuICAvKipcbiAgICogUmVtb3ZlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICovXG4gIG5vQm9yZGVyPzogYm9vbGVhblxuICAvKipcbiAgICogSWYgdGhlIHByaWNlIG9mIHRoZSBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIGVuYWJsZSB0aGlzIHByb3AuIGV4OiA1a2cgb2YgY2hvY29sYXRlIGlzIHNhbWUgcHJpY2Ugb3ZlciAxIG1vbnRoIG9yIDEgaG91ci5cbiAgICovXG4gIG5vSXRlcmF0aW9uPzogYm9vbGVhblxuICBub0l0ZXJhdGlvblRleHQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgcHJpY2Ugb24gdGhlIHJpZ2h0IHNlY3Rpb24gb2YgdGhlIHRhYmxlXG4gICAqL1xuICBub1ByaWNlPzogYm9vbGVhblxuICAvKipcbiAgICogTm90aWNlIHRvIGRpc3BsYXkgYmVsb3cgdGhlIGxhYmVsXG4gICAqL1xuICBub3RpY2U/OiBzdHJpbmdcbiAgb25BbW91bnRDaGFuZ2U/OiAoYW1vdW50OiBudW1iZXIpID0+IHZvaWRcbiAgLyoqXG4gICAqIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICovXG4gIHByaWNlPzogbnVtYmVyXG4gIHByaWNlVGV4dD86IFJlYWN0Tm9kZVxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICAvKipcbiAgICogSGlkZSBpdGVtIGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICovXG4gIHNob3VsZEJlSGlkZGVuPzogYm9vbGVhblxuICAvKipcbiAgICogRGlzcGxheSBhIGNvbXBsZW1lbnRhcnkgdGV4dCBvbiB0aGUgcmlnaHQgb2YgdGhlIGxhYmVsXG4gICAqL1xuICBzdWJMYWJlbD86IHN0cmluZ1xuICAvKipcbiAgICogSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtIGxpa2VcbiAgICovXG4gIHRhYnVsYXRpb24/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRleHQgdG8gZGlzcGxheSBpbiBjYXNlIG9mIG5vdCBkZWZpbmVkIHZhbHVlXG4gICAqL1xuICB0ZXh0Tm90RGVmaW5lZD86IHN0cmluZ1xuICAvKipcbiAgICogRGlzcGxheSBuZWFyIGxhYmVsLCBhbiBpY29uIHdpdGggYSB0b29sdGlwIHRoYXQgY29udGFpbnMgeW91ciB0ZXh0XG4gICAqL1xuICB0b29sdGlwSW5mbz86IHN0cmluZ1xuICAvKipcbiAgICogVW5pdCBvZiB5b3VyIGl0ZW0sIGV4YW1wbGVzOiBHQiwgTUIsIE5vZGUsIFF1ZXJpZXMsIGV0Yy5cbiAgICovXG4gIHVuaXQ/OlxuICAgIHwgJ21iJ1xuICAgIHwgJ2diJ1xuICAgIHwgJ3RiJ1xuICAgIHwgJ3NlY29uZHMnXG4gICAgfCAnbWludXRlcydcbiAgICB8ICdob3VycydcbiAgICB8ICdkYXlzJ1xuICAgIHwgJ21vbnRocydcbiAgICB8ICd5ZWFycydcbiAgICAvLyBBbGxvdyBhIHN0cmluZyBmb3IgdW5pdCBidXQga2VlcCBhdXRvY29tcGxldGUgZm9yIHRoZSBhYm92ZSB2YWx1ZXNcbiAgICB8IChzdHJpbmcgJiBOb25OdWxsYWJsZTx1bmtub3duPilcbiAgLypcbiAgICogVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gICAqL1xuICBzdHJpa2VUaHJvdWdoPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZU5vUHJpY2VJdGVtID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuZXhwb3J0IGNvbnN0IEl0ZW0gPSBtZW1vKFxuICAoe1xuICAgIGRpc2NvdW50ID0gMCxcbiAgICBwcmljZVRleHQsXG4gICAgZGlzY291bnRUZXh0LFxuICAgIGxhYmVsLFxuICAgIHRvb2x0aXBJbmZvLCAvLyBTaG93cyBhbiBpY29uIHdpdGggdG9vbHRpcCB0aGF0IGNvbnRhaW5zIHRoaXMgdGV4dFxuICAgIHN1YkxhYmVsID0gJycsIC8vIFVzdWFsbHkgdXNlZCBmb3Igc2hvd2luZyBhbW91bnQgdGhhdCBpcyBmcmVlXG4gICAgcHJpY2U6IGJhc2VQcmljZSA9IDAsIC8vIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICBtb250aGx5UHJpY2UgPSAwLCAvLyBQcmljZSBwZXIgbW9udGhcbiAgICB1bml0OiBiYXNlVW5pdCwgLy8gQ2FuIGJlIEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgIGFtb3VudDogY3VycmVudEFtb3VudCA9IDEsIC8vIEN1cnJlbnQgbnVtYmVyIG9mIGl0ZW1zXG4gICAgb25BbW91bnRDaGFuZ2UsXG4gICAgYW1vdW50RnJlZSA9IDAsIC8vIEFtb3VudCB0aGF0IGlzIGZyZWUgLSBvZmZlcmVkIGJ5IGNvbXBhbnlcbiAgICBtYXhBbW91bnQgPSAwLCAvLyBNYXggYW1vdW50IC0gdXNlZCBmb3Iga3ViZXJuZXRlcyBmb3IgZXhhbXBsZVxuICAgIGxvbmdGcmFjdGlvbkRpZ2l0cyA9IGZhbHNlLCAvLyBJbiBjYXNlIHByaWNlIGlzIHJlYWxseSBsb25nIDAuMDAwMDA3NiAtIHVwIDcgZnJhY3Rpb24gZGlnaXRzXG4gICAgbm9JdGVyYXRpb24gPSBmYWxzZSwgLy8gaWYgaXRlbSBpcyBub3QgYmFzZWQgb24gdGltZSAoZXg6IGRvd25sb2FkLCB1cGxvYWQsIHRyYW5zZmVyKVxuICAgIG5vSXRlcmF0aW9uVGV4dCxcbiAgICBub0JvcmRlciwgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYm90dG9tIG9mIHRoZSBpdGVtXG4gICAgbm9QcmljZSwgLy8gcmVtb3ZlIHRoZSBwcmljZSBvbiByaWdodCBzaWRlIG9mIHRoZSB0YWJsZVxuICAgIGlzRGVmaW5lZCA9IHRydWUsXG4gICAgY2hpbGRyZW4gPSBudWxsLFxuICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNMYXN0RWxlbWVudCA9IGZhbHNlLFxuICAgIGlzUHJpbWFyeUJhY2tncm91bmQgPSBmYWxzZSxcbiAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgIGl0ZXJhdGlvbjogcmVjZWl2ZWRJdGVyYXRpb24sIC8vIE9iamVjdCBmcm9tIHBhcmVudCB0aGF0IGNvbnRhaW5zIHRpbWUgcGVyaW9kIChob3VycywgZGF5cywgbW9udGhzKVxuICAgIHNob3VsZEJlSGlkZGVuID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsXG4gICAgaGlkZUZyb21PdmVybGF5ID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaW4gYW55IGNhc2VcbiAgICB0ZXh0Tm90RGVmaW5lZCwgLy8gVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICBhbmltYXRlZCA9IGZhbHNlLCAvLyBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgIHRhYnVsYXRpb24sIC8vIEluY3JlYXNlIGxlZnQgcGFkZGluZyBvZiB0aGUgaXRlbVxuICAgIGxhYmVsVGV4dFZhcmlhbnQsIC8vIFRvIGNoYW5nZSBsZWZ0IGNlbGwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAgbGFiZWxUZXh0UHJvbWluZW5jZSwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHByb21pbmVuY2VcbiAgICBub3RpY2UsIC8vIFRvIGRpc3BsYXkgYSBncmF5IHRleHQgYmVsb3cgdGhlIGxhYmVsXG4gICAgc3RyaWtlVGhyb3VnaCwgLy8gVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gIH06IEl0ZW1Qcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgbG9jYWxlcywgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuXG4gICAgbGV0IGl0ZXJhdGlvbjogSXRlcmF0aW9uIHwgdW5kZWZpbmVkXG5cbiAgICBpZiAobm9JdGVyYXRpb24pIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHtcbiAgICAgICAgLi4uKHJlY2VpdmVkSXRlcmF0aW9uID8/IHsgdmFsdWU6IDAgfSksXG4gICAgICAgIHVuaXQ6ICdob3VycycsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHJlY2VpdmVkSXRlcmF0aW9uXG4gICAgfVxuXG4gICAgY29uc3QgcHJpY2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChtb250aGx5UHJpY2UgJiYgYmFzZVByaWNlID09PSAwKSB7XG4gICAgICAgIHJldHVybiBtb250aGx5UHJpY2UgLyBtdWx0aXBsaWVyLm1vbnRoc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVByaWNlXG4gICAgfSwgW2Jhc2VQcmljZSwgbW9udGhseVByaWNlXSlcblxuICAgIGNvbnN0IHVuaXQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghYmFzZVVuaXQpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QudW5pdHMuZ2IubGFiZWwnXVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVVuaXRcbiAgICB9LCBbYmFzZVVuaXQsIGxvY2FsZXNdKVxuXG4gICAgY29uc3QgeyBpc092ZXJsYXkgfSA9IHVzZU92ZXJsYXkoKVxuICAgIGNvbnN0IFJvdyA9IGlzT3ZlcmxheSA/IE92ZXJsYXlSb3cgOiBTdHlsZWRUclxuICAgIGNvbnN0IENlbGwgPSBpc092ZXJsYXkgPyBTdHlsZWRDZWxsLndpdGhDb21wb25lbnQoJ2RpdicpIDogU3R5bGVkQ2VsbFxuICAgIGNvbnN0IExlZnRTaWRlID0gaXNPdmVybGF5ID8gJ2RpdicgOiBTdHlsZWRMZWZ0U2lkZVxuXG4gICAgY29uc3QgW2Ftb3VudCwgc2V0QW1vdW50XSA9IHVzZVN0YXRlKGN1cnJlbnRBbW91bnQpXG4gICAgY29uc3QgW2lzVmFyaWFudCwgc2V0SXNWYXJpYW50XSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHNldEFtb3VudChjdXJyZW50QW1vdW50KSwgW3NldEFtb3VudCwgY3VycmVudEFtb3VudF0pXG4gICAgdXNlRWZmZWN0KCgpID0+IG9uQW1vdW50Q2hhbmdlPy4oYW1vdW50KSwgW29uQW1vdW50Q2hhbmdlLCBhbW91bnRdKVxuXG4gICAgY29uc3QgaXRlbUNhbGxiYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAobG9jYWxBbW91bnQ6IG51bWJlciwgbG9jYWxJc1ZhcmlhbnQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgc2V0QW1vdW50KGxvY2FsQW1vdW50KVxuICAgICAgICBzZXRJc1ZhcmlhbnQobG9jYWxJc1ZhcmlhbnQpXG4gICAgICB9LFxuICAgICAgW3NldEFtb3VudCwgc2V0SXNWYXJpYW50XSxcbiAgICApXG5cbiAgICBjb25zdCBpZCA9IHVzZUlkKClcblxuICAgIC8vIFdlIHJlbW92ZSBJdGVtIGZyb20gb2JqZWN0IGxpc3Qgd2hlbiBJZW0gY29tcG9uZW50IHVubW91bnQgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgIHVzZUVmZmVjdChcbiAgICAgICgpID0+ICgpID0+IHByb2R1Y3RzQ2FsbGJhY2s/LnJlbW92ZSh7IGlkIH0pLFxuICAgICAgW2lkLCBwcm9kdWN0c0NhbGxiYWNrXSxcbiAgICApXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFpc092ZXJsYXkpIHtcbiAgICAgICAgcHJvZHVjdHNDYWxsYmFjaz8uYWRkKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBpc1ZhcmlhbnQsXG4gICAgICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICBub0l0ZXJhdGlvbixcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBwcmljZSxcbiAgICAgIGRpc2NvdW50LFxuICAgICAgYW1vdW50LFxuICAgICAgaWQsXG4gICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgbWF4QW1vdW50LFxuICAgICAgbm9JdGVyYXRpb24sXG4gICAgICBpc1ZhcmlhbnQsXG4gICAgICBhbW91bnRGcmVlLFxuICAgICAgaXNPdmVybGF5LFxuICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgIF0pXG5cbiAgICBjb25zdCBjb21wdXRlZEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50LFxuICAgICAgICAgIGFtb3VudEZyZWUsXG4gICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgcHJpY2UsXG4gICAgICAgICAgdGltZUFtb3VudDogbm9JdGVyYXRpb24gPyAxIDogKGl0ZXJhdGlvbj8udmFsdWUgPz8gMSksXG4gICAgICAgICAgdGltZVVuaXQ6IG5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IChpdGVyYXRpb24/LnVuaXQgPz8gJ2hvdXJzJyksXG4gICAgICAgIH0pLFxuICAgICAgW3ByaWNlLCBhbW91bnQsIGFtb3VudEZyZWUsIGl0ZXJhdGlvbiwgbm9JdGVyYXRpb24sIGRpc2NvdW50XSxcbiAgICApXG5cbiAgICBjb25zdCBjb21wdXRlZE1heEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50OiBtYXhBbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIG1heEFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFpdGVyYXRpb24/LnVuaXQpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24/LnVuaXRdXG4gICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbj8udW5pdF1cbiAgICB9LCBbaXRlcmF0aW9uPy51bml0LCBsb25nRnJhY3Rpb25EaWdpdHNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxSb3dcbiAgICAgICAgaGlkZUZyb21PdmVybGF5PXtoaWRlRnJvbU92ZXJsYXl9XG4gICAgICAgIGlzRmlyc3RFbGVtZW50PXtpc0ZpcnN0RWxlbWVudH1cbiAgICAgICAgc2hvdWxkQmVIaWRkZW49e3Nob3VsZEJlSGlkZGVufVxuICAgICAgPlxuICAgICAgICA8Q2VsbFxuICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyICYmICFpc092ZXJsYXl9XG4gICAgICAgICAgdGFidWxhdGlvbj17dGFidWxhdGlvbn1cbiAgICAgICAgICB3aWR0aD17IWlzT3ZlcmxheSA/IE1BWF9DRUxMX1dJRFRIIDogJ2luaGVyaXQnfVxuICAgICAgICA+XG4gICAgICAgICAgPExlZnRTaWRlPlxuICAgICAgICAgICAgPFN0YWNrPlxuICAgICAgICAgICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtsYWJlbFRleHRQcm9taW5lbmNlID8/ICdkZWZhdWx0J31cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e2xhYmVsVGV4dFZhcmlhbnQgPz8gJ2JvZHknfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAge3Rvb2x0aXBJbmZvID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZERpdj5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRvb2x0aXAgdGV4dD17dG9vbHRpcEluZm99PlxuICAgICAgICAgICAgICAgICAgICAgIDxIZWxwQ2lyY2xlT3V0bGluZUljb24gc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVG9vbHRpcD5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgIHtzdWJMYWJlbCAmJiAhaXNPdmVybGF5ID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHQgYXM9XCJwXCIgaXRhbGljIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICB7c3ViTGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge2Rpc2NvdW50ID4gMCAmJiBkaXNjb3VudFRleHQgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkQmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgcHJvbWluZW5jZT1cInN0cm9uZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7ZGlzY291bnRUZXh0fVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRCYWRnZT5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAge25vdGljZSA/IChcbiAgICAgICAgICAgICAgICA8TWF4V2lkdGhUZXh0IGFzPVwicFwiIHByb21pbmVuY2U9XCJ3ZWFrXCIgdmFyaWFudD1cImNhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgIHtub3RpY2V9XG4gICAgICAgICAgICAgICAgPC9NYXhXaWR0aFRleHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgIDxTdHlsZWRSZXNvdXJjZU5hbWUgYW5pbWF0ZWQ9e2FuaW1hdGVkfSBpc092ZXJsYXk9e2lzT3ZlcmxheX0+XG4gICAgICAgICAgICAgIHtpc0RlZmluZWRcbiAgICAgICAgICAgICAgICA/IENoaWxkcmVuLm1hcChjaGlsZHJlbiwgY2hpbGQgPT5cbiAgICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgICAgPyBjbG9uZUVsZW1lbnQoY2hpbGQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGV4dE5vdERlZmluZWQgfHwgbG9jYWxlc1snZXN0aW1hdGUuY29zdC5ub3REZWZpbmVkJ119XG4gICAgICAgICAgICA8L1N0eWxlZFJlc291cmNlTmFtZT5cbiAgICAgICAgICA8L0xlZnRTaWRlPlxuICAgICAgICA8L0NlbGw+XG4gICAgICAgIHshaXNPdmVybGF5ID8gKFxuICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGxcbiAgICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyfVxuICAgICAgICAgICAgcHJpbWFyeT17aXNQcmltYXJ5QmFja2dyb3VuZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7IW5vUHJpY2UgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPFN0eWxlTm9QcmljZUl0ZW1cbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtcbiAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRJdGVtUHJpY2UgPT09IDAgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICA/ICd3ZWFrJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2RlZmF1bHQnXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ25ldXRyYWwnXG4gICAgICAgICAgICAgICAgICAgICAgOiAncHJpbWFyeSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHN0cmlrZVRocm91Z2g9e3N0cmlrZVRocm91Z2h9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PXtub0l0ZXJhdGlvblRleHQgPyAnaGVhZGluZ1NtYWxsJyA6ICdib2R5U3Ryb25nJ31cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cHJpY2VUZXh0fVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHRcbiAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXROdW1iZXIoY29tcHV0ZWRJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIHtub0l0ZXJhdGlvblRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVNtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgL3tub0l0ZXJhdGlvblRleHR9XG4gICAgICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHQgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPiAwXG4gICAgICAgICAgICAgICAgICAgID8gYCAtICR7Zm9ybWF0TnVtYmVyKGNvbXB1dGVkTWF4SXRlbVByaWNlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1N0eWxlTm9QcmljZUl0ZW0+XG4gICAgICAgICAgICAgICAgeyhhbW91bnQgLSBhbW91bnRGcmVlICE9PSAxICYmIGNvbXB1dGVkSXRlbVByaWNlID4gMCkgfHxcbiAgICAgICAgICAgICAgICAobWF4QW1vdW50ID4gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDApID8gKFxuICAgICAgICAgICAgICAgICAgPFRleHRBbGlnblJpZ2h0IGFzPVwicFwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtmb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdDogJ2hvdXJzJyxcbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGxvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcuaG91cnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge1RJTUVfUkVMQVRFRF9VTklULmluY2x1ZGVzKHVuaXQgYXMgVW5pdHMpXG4gICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy4ke3VuaXQgYXMgVW5pdHN9LmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgICAgOiBgLyR7dW5pdH1gfVxuICAgICAgICAgICAgICAgICAgICB7IW5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgPyBgLyR7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VzdGltYXRlLmNvc3QudW5pdHMuaG91cnMubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIDwvVGV4dEFsaWduUmlnaHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9Sb3c+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
38
- const StyledText = /* @__PURE__ */ _styled(Text, process.env.NODE_ENV === "production" ? {
39
- target: "e1kzy2rr5"
40
- } : {
41
- target: "e1kzy2rr5",
42
- label: "StyledText"
43
- })("margin-left:", ({
44
- theme
45
- }) => theme.space["1"], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEUrQiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Db21wb25lbnRzL0l0ZW0udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBIZWxwQ2lyY2xlT3V0bGluZUljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgeyBCYWRnZSwgU3RhY2ssIFRleHQsIFRvb2x0aXAsIHpvb21JbiB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUlkLFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBPdmVybGF5Um93LFxuICBwcmljZUNlbGwsXG4gIENlbGwgYXMgU3R5bGVkQ2VsbCxcbiAgU3R5bGVkRGl2LFxuICBTdHlsZWRMZWZ0U2lkZSxcbiAgU3R5bGVkVHIsXG59IGZyb20gJy4uL2NvbXBvbmVudFN0eWxlJ1xuaW1wb3J0IHtcbiAgTUFYX0NFTExfV0lEVEgsXG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyxcbiAgbXVsdGlwbGllcixcbn0gZnJvbSAnLi4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4uL2hlbHBlcidcbmltcG9ydCB7IHVzZU92ZXJsYXkgfSBmcm9tICcuLi9PdmVybGF5Q29udGV4dCdcbmltcG9ydCB0eXBlIHtcbiAgQmFyZUVzdGltYXRlUHJvZHVjdCxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuLi90eXBlcydcblxuY29uc3QgVElNRV9SRUxBVEVEX1VOSVQ6IFVuaXRzW10gPSBbXG4gICdzZWNvbmRzJyxcbiAgJ21pbnV0ZXMnLFxuICAnaG91cnMnLFxuICAnZGF5cycsXG4gICdtb250aHMnLFxuXVxuXG5jb25zdCBTdHlsZWRSZXNvdXJjZU5hbWUgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnaXNPdmVybGF5JywgJ2FuaW1hdGVkJ10uaW5jbHVkZXMocHJvcCksXG59KTx7XG4gIGlzT3ZlcmxheTogYm9vbGVhblxuICBhbmltYXRlZDogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246ICR7KHsgaXNPdmVybGF5IH0pID0+IChpc092ZXJsYXkgPyAnaW5pdGlhbCcgOiAncmlnaHQnKX07XG5cbiAgJHsoeyBpc092ZXJsYXksIGFuaW1hdGVkIH0pID0+XG4gICAgaXNPdmVybGF5XG4gICAgICA/IGNzc2BcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbmltYXRpb246ICR7YW5pbWF0ZWQgPyBjc3NgODAwbXMgJHt6b29tSW59YCA6ICcnfTtcbiAgICAgICAgYFxuICAgICAgOiBudWxsfVxuYFxuXG5jb25zdCBTdHlsZWRCYWRnZSA9IHN0eWxlZChCYWRnZSlgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5gXG5cbmNvbnN0IFN0eWxlZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuYFxuXG5jb25zdCBNYXhXaWR0aFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1heC13aWR0aDogNzUlO1xuYFxuXG5jb25zdCBUZXh0QWxpZ25SaWdodCA9IHN0eWxlZChUZXh0KWBcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5gXG5cbmNvbnN0IFN0eWxlZFRvb2x0aXAgPSBzdHlsZWQoVG9vbHRpcClgXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKFN0eWxlZENlbGwpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG5gXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXRlbUNhbGxiYWNrOiAoYW1vdW50OiBudW1iZXIsIGlzVmFyaWFudDogYm9vbGVhbikgPT4gdm9pZFxuICBhbW91bnQ6IG51bWJlclxuICBtYXhBbW91bnQ6IG51bWJlclxuICB1bml0OiBzdHJpbmdcbn1cblxudHlwZSBJdGVtUHJvcHMgPSB7XG4gIGFtb3VudD86IG51bWJlclxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXJlIGZyZWUuIEl0IHdpbGwgYmUgZGVkdWN0ZWQgdG8gcHJpY2Ugb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBhbW91bnRGcmVlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgYW5pbWF0ZWQ/OiBib29sZWFuXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlXG4gIGRpc2NvdW50PzogbnVtYmVyXG4gIGRpc2NvdW50VGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheVxuICAgKi9cbiAgaGlkZUZyb21PdmVybGF5PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0RlZmluZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRmlyc3RFbGVtZW50PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBpc1ByaW1hcnlCYWNrZ3JvdW5kPzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgLyoqXG4gICAqIFN0cmluZyB0aGF0IGlzIGRpc3BsYXllZCBvbiBsZWZ0IHBhcnQgb2YgdGhlIGl0ZW0sIGl0IGRlZmluZXMgdGhlIGl0ZW1cbiAgICovXG4gIGxhYmVsPzogUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgdmFyaWFudFxuICAgKi9cbiAgbGFiZWxUZXh0VmFyaWFudD86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsndmFyaWFudCddXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgKi9cbiAgbGFiZWxUZXh0UHJvbWluZW5jZT86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsncHJvbWluZW5jZSddXG4gIC8qKlxuICAgKiBJZiB5b3VyIHByaWNlIGhhcyBhIGxvdCBvZiBudW1iZXIgYWZ0ZXIgZGVjaW1hbCBwb2ludCAoZXg6IDAuMDAwMDA3NikgLSB1cCA4IGZyYWN0aW9uIGRpZ2l0c1xuICAgKi9cbiAgbG9uZ0ZyYWN0aW9uRGlnaXRzPzogYm9vbGVhblxuICAvKipcbiAgICogQ3JlYXRlIGEgcmFuZ2UgcHJpY2Ugd2l0aCBbYW1vdW50IC0gbWF4QW1vdW50XSB2YWx1ZXMgYW5kIHByaWNlc1xuICAgKi9cbiAgbWF4QW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBQcmljZSBwZXIgbW9udGhcbiAgICovXG4gIG1vbnRobHlQcmljZT86IG51bWJlclxuICAvKipcbiAgICogUmVtb3ZlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICovXG4gIG5vQm9yZGVyPzogYm9vbGVhblxuICAvKipcbiAgICogSWYgdGhlIHByaWNlIG9mIHRoZSBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIGVuYWJsZSB0aGlzIHByb3AuIGV4OiA1a2cgb2YgY2hvY29sYXRlIGlzIHNhbWUgcHJpY2Ugb3ZlciAxIG1vbnRoIG9yIDEgaG91ci5cbiAgICovXG4gIG5vSXRlcmF0aW9uPzogYm9vbGVhblxuICBub0l0ZXJhdGlvblRleHQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgcHJpY2Ugb24gdGhlIHJpZ2h0IHNlY3Rpb24gb2YgdGhlIHRhYmxlXG4gICAqL1xuICBub1ByaWNlPzogYm9vbGVhblxuICAvKipcbiAgICogTm90aWNlIHRvIGRpc3BsYXkgYmVsb3cgdGhlIGxhYmVsXG4gICAqL1xuICBub3RpY2U/OiBzdHJpbmdcbiAgb25BbW91bnRDaGFuZ2U/OiAoYW1vdW50OiBudW1iZXIpID0+IHZvaWRcbiAgLyoqXG4gICAqIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICovXG4gIHByaWNlPzogbnVtYmVyXG4gIHByaWNlVGV4dD86IFJlYWN0Tm9kZVxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICAvKipcbiAgICogSGlkZSBpdGVtIGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICovXG4gIHNob3VsZEJlSGlkZGVuPzogYm9vbGVhblxuICAvKipcbiAgICogRGlzcGxheSBhIGNvbXBsZW1lbnRhcnkgdGV4dCBvbiB0aGUgcmlnaHQgb2YgdGhlIGxhYmVsXG4gICAqL1xuICBzdWJMYWJlbD86IHN0cmluZ1xuICAvKipcbiAgICogSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtIGxpa2VcbiAgICovXG4gIHRhYnVsYXRpb24/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRleHQgdG8gZGlzcGxheSBpbiBjYXNlIG9mIG5vdCBkZWZpbmVkIHZhbHVlXG4gICAqL1xuICB0ZXh0Tm90RGVmaW5lZD86IHN0cmluZ1xuICAvKipcbiAgICogRGlzcGxheSBuZWFyIGxhYmVsLCBhbiBpY29uIHdpdGggYSB0b29sdGlwIHRoYXQgY29udGFpbnMgeW91ciB0ZXh0XG4gICAqL1xuICB0b29sdGlwSW5mbz86IHN0cmluZ1xuICAvKipcbiAgICogVW5pdCBvZiB5b3VyIGl0ZW0sIGV4YW1wbGVzOiBHQiwgTUIsIE5vZGUsIFF1ZXJpZXMsIGV0Yy5cbiAgICovXG4gIHVuaXQ/OlxuICAgIHwgJ21iJ1xuICAgIHwgJ2diJ1xuICAgIHwgJ3RiJ1xuICAgIHwgJ3NlY29uZHMnXG4gICAgfCAnbWludXRlcydcbiAgICB8ICdob3VycydcbiAgICB8ICdkYXlzJ1xuICAgIHwgJ21vbnRocydcbiAgICB8ICd5ZWFycydcbiAgICAvLyBBbGxvdyBhIHN0cmluZyBmb3IgdW5pdCBidXQga2VlcCBhdXRvY29tcGxldGUgZm9yIHRoZSBhYm92ZSB2YWx1ZXNcbiAgICB8IChzdHJpbmcgJiBOb25OdWxsYWJsZTx1bmtub3duPilcbiAgLypcbiAgICogVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gICAqL1xuICBzdHJpa2VUaHJvdWdoPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZU5vUHJpY2VJdGVtID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuZXhwb3J0IGNvbnN0IEl0ZW0gPSBtZW1vKFxuICAoe1xuICAgIGRpc2NvdW50ID0gMCxcbiAgICBwcmljZVRleHQsXG4gICAgZGlzY291bnRUZXh0LFxuICAgIGxhYmVsLFxuICAgIHRvb2x0aXBJbmZvLCAvLyBTaG93cyBhbiBpY29uIHdpdGggdG9vbHRpcCB0aGF0IGNvbnRhaW5zIHRoaXMgdGV4dFxuICAgIHN1YkxhYmVsID0gJycsIC8vIFVzdWFsbHkgdXNlZCBmb3Igc2hvd2luZyBhbW91bnQgdGhhdCBpcyBmcmVlXG4gICAgcHJpY2U6IGJhc2VQcmljZSA9IDAsIC8vIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICBtb250aGx5UHJpY2UgPSAwLCAvLyBQcmljZSBwZXIgbW9udGhcbiAgICB1bml0OiBiYXNlVW5pdCwgLy8gQ2FuIGJlIEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgIGFtb3VudDogY3VycmVudEFtb3VudCA9IDEsIC8vIEN1cnJlbnQgbnVtYmVyIG9mIGl0ZW1zXG4gICAgb25BbW91bnRDaGFuZ2UsXG4gICAgYW1vdW50RnJlZSA9IDAsIC8vIEFtb3VudCB0aGF0IGlzIGZyZWUgLSBvZmZlcmVkIGJ5IGNvbXBhbnlcbiAgICBtYXhBbW91bnQgPSAwLCAvLyBNYXggYW1vdW50IC0gdXNlZCBmb3Iga3ViZXJuZXRlcyBmb3IgZXhhbXBsZVxuICAgIGxvbmdGcmFjdGlvbkRpZ2l0cyA9IGZhbHNlLCAvLyBJbiBjYXNlIHByaWNlIGlzIHJlYWxseSBsb25nIDAuMDAwMDA3NiAtIHVwIDcgZnJhY3Rpb24gZGlnaXRzXG4gICAgbm9JdGVyYXRpb24gPSBmYWxzZSwgLy8gaWYgaXRlbSBpcyBub3QgYmFzZWQgb24gdGltZSAoZXg6IGRvd25sb2FkLCB1cGxvYWQsIHRyYW5zZmVyKVxuICAgIG5vSXRlcmF0aW9uVGV4dCxcbiAgICBub0JvcmRlciwgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYm90dG9tIG9mIHRoZSBpdGVtXG4gICAgbm9QcmljZSwgLy8gcmVtb3ZlIHRoZSBwcmljZSBvbiByaWdodCBzaWRlIG9mIHRoZSB0YWJsZVxuICAgIGlzRGVmaW5lZCA9IHRydWUsXG4gICAgY2hpbGRyZW4gPSBudWxsLFxuICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNMYXN0RWxlbWVudCA9IGZhbHNlLFxuICAgIGlzUHJpbWFyeUJhY2tncm91bmQgPSBmYWxzZSxcbiAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgIGl0ZXJhdGlvbjogcmVjZWl2ZWRJdGVyYXRpb24sIC8vIE9iamVjdCBmcm9tIHBhcmVudCB0aGF0IGNvbnRhaW5zIHRpbWUgcGVyaW9kIChob3VycywgZGF5cywgbW9udGhzKVxuICAgIHNob3VsZEJlSGlkZGVuID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsXG4gICAgaGlkZUZyb21PdmVybGF5ID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaW4gYW55IGNhc2VcbiAgICB0ZXh0Tm90RGVmaW5lZCwgLy8gVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICBhbmltYXRlZCA9IGZhbHNlLCAvLyBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgIHRhYnVsYXRpb24sIC8vIEluY3JlYXNlIGxlZnQgcGFkZGluZyBvZiB0aGUgaXRlbVxuICAgIGxhYmVsVGV4dFZhcmlhbnQsIC8vIFRvIGNoYW5nZSBsZWZ0IGNlbGwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAgbGFiZWxUZXh0UHJvbWluZW5jZSwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHByb21pbmVuY2VcbiAgICBub3RpY2UsIC8vIFRvIGRpc3BsYXkgYSBncmF5IHRleHQgYmVsb3cgdGhlIGxhYmVsXG4gICAgc3RyaWtlVGhyb3VnaCwgLy8gVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gIH06IEl0ZW1Qcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgbG9jYWxlcywgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuXG4gICAgbGV0IGl0ZXJhdGlvbjogSXRlcmF0aW9uIHwgdW5kZWZpbmVkXG5cbiAgICBpZiAobm9JdGVyYXRpb24pIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHtcbiAgICAgICAgLi4uKHJlY2VpdmVkSXRlcmF0aW9uID8/IHsgdmFsdWU6IDAgfSksXG4gICAgICAgIHVuaXQ6ICdob3VycycsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHJlY2VpdmVkSXRlcmF0aW9uXG4gICAgfVxuXG4gICAgY29uc3QgcHJpY2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChtb250aGx5UHJpY2UgJiYgYmFzZVByaWNlID09PSAwKSB7XG4gICAgICAgIHJldHVybiBtb250aGx5UHJpY2UgLyBtdWx0aXBsaWVyLm1vbnRoc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVByaWNlXG4gICAgfSwgW2Jhc2VQcmljZSwgbW9udGhseVByaWNlXSlcblxuICAgIGNvbnN0IHVuaXQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghYmFzZVVuaXQpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QudW5pdHMuZ2IubGFiZWwnXVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVVuaXRcbiAgICB9LCBbYmFzZVVuaXQsIGxvY2FsZXNdKVxuXG4gICAgY29uc3QgeyBpc092ZXJsYXkgfSA9IHVzZU92ZXJsYXkoKVxuICAgIGNvbnN0IFJvdyA9IGlzT3ZlcmxheSA/IE92ZXJsYXlSb3cgOiBTdHlsZWRUclxuICAgIGNvbnN0IENlbGwgPSBpc092ZXJsYXkgPyBTdHlsZWRDZWxsLndpdGhDb21wb25lbnQoJ2RpdicpIDogU3R5bGVkQ2VsbFxuICAgIGNvbnN0IExlZnRTaWRlID0gaXNPdmVybGF5ID8gJ2RpdicgOiBTdHlsZWRMZWZ0U2lkZVxuXG4gICAgY29uc3QgW2Ftb3VudCwgc2V0QW1vdW50XSA9IHVzZVN0YXRlKGN1cnJlbnRBbW91bnQpXG4gICAgY29uc3QgW2lzVmFyaWFudCwgc2V0SXNWYXJpYW50XSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHNldEFtb3VudChjdXJyZW50QW1vdW50KSwgW3NldEFtb3VudCwgY3VycmVudEFtb3VudF0pXG4gICAgdXNlRWZmZWN0KCgpID0+IG9uQW1vdW50Q2hhbmdlPy4oYW1vdW50KSwgW29uQW1vdW50Q2hhbmdlLCBhbW91bnRdKVxuXG4gICAgY29uc3QgaXRlbUNhbGxiYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAobG9jYWxBbW91bnQ6IG51bWJlciwgbG9jYWxJc1ZhcmlhbnQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgc2V0QW1vdW50KGxvY2FsQW1vdW50KVxuICAgICAgICBzZXRJc1ZhcmlhbnQobG9jYWxJc1ZhcmlhbnQpXG4gICAgICB9LFxuICAgICAgW3NldEFtb3VudCwgc2V0SXNWYXJpYW50XSxcbiAgICApXG5cbiAgICBjb25zdCBpZCA9IHVzZUlkKClcblxuICAgIC8vIFdlIHJlbW92ZSBJdGVtIGZyb20gb2JqZWN0IGxpc3Qgd2hlbiBJZW0gY29tcG9uZW50IHVubW91bnQgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgIHVzZUVmZmVjdChcbiAgICAgICgpID0+ICgpID0+IHByb2R1Y3RzQ2FsbGJhY2s/LnJlbW92ZSh7IGlkIH0pLFxuICAgICAgW2lkLCBwcm9kdWN0c0NhbGxiYWNrXSxcbiAgICApXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFpc092ZXJsYXkpIHtcbiAgICAgICAgcHJvZHVjdHNDYWxsYmFjaz8uYWRkKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBpc1ZhcmlhbnQsXG4gICAgICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICBub0l0ZXJhdGlvbixcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBwcmljZSxcbiAgICAgIGRpc2NvdW50LFxuICAgICAgYW1vdW50LFxuICAgICAgaWQsXG4gICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgbWF4QW1vdW50LFxuICAgICAgbm9JdGVyYXRpb24sXG4gICAgICBpc1ZhcmlhbnQsXG4gICAgICBhbW91bnRGcmVlLFxuICAgICAgaXNPdmVybGF5LFxuICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgIF0pXG5cbiAgICBjb25zdCBjb21wdXRlZEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50LFxuICAgICAgICAgIGFtb3VudEZyZWUsXG4gICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgcHJpY2UsXG4gICAgICAgICAgdGltZUFtb3VudDogbm9JdGVyYXRpb24gPyAxIDogKGl0ZXJhdGlvbj8udmFsdWUgPz8gMSksXG4gICAgICAgICAgdGltZVVuaXQ6IG5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IChpdGVyYXRpb24/LnVuaXQgPz8gJ2hvdXJzJyksXG4gICAgICAgIH0pLFxuICAgICAgW3ByaWNlLCBhbW91bnQsIGFtb3VudEZyZWUsIGl0ZXJhdGlvbiwgbm9JdGVyYXRpb24sIGRpc2NvdW50XSxcbiAgICApXG5cbiAgICBjb25zdCBjb21wdXRlZE1heEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50OiBtYXhBbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIG1heEFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFpdGVyYXRpb24/LnVuaXQpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24/LnVuaXRdXG4gICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbj8udW5pdF1cbiAgICB9LCBbaXRlcmF0aW9uPy51bml0LCBsb25nRnJhY3Rpb25EaWdpdHNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxSb3dcbiAgICAgICAgaGlkZUZyb21PdmVybGF5PXtoaWRlRnJvbU92ZXJsYXl9XG4gICAgICAgIGlzRmlyc3RFbGVtZW50PXtpc0ZpcnN0RWxlbWVudH1cbiAgICAgICAgc2hvdWxkQmVIaWRkZW49e3Nob3VsZEJlSGlkZGVufVxuICAgICAgPlxuICAgICAgICA8Q2VsbFxuICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyICYmICFpc092ZXJsYXl9XG4gICAgICAgICAgdGFidWxhdGlvbj17dGFidWxhdGlvbn1cbiAgICAgICAgICB3aWR0aD17IWlzT3ZlcmxheSA/IE1BWF9DRUxMX1dJRFRIIDogJ2luaGVyaXQnfVxuICAgICAgICA+XG4gICAgICAgICAgPExlZnRTaWRlPlxuICAgICAgICAgICAgPFN0YWNrPlxuICAgICAgICAgICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtsYWJlbFRleHRQcm9taW5lbmNlID8/ICdkZWZhdWx0J31cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e2xhYmVsVGV4dFZhcmlhbnQgPz8gJ2JvZHknfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAge3Rvb2x0aXBJbmZvID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZERpdj5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRvb2x0aXAgdGV4dD17dG9vbHRpcEluZm99PlxuICAgICAgICAgICAgICAgICAgICAgIDxIZWxwQ2lyY2xlT3V0bGluZUljb24gc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVG9vbHRpcD5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgIHtzdWJMYWJlbCAmJiAhaXNPdmVybGF5ID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHQgYXM9XCJwXCIgaXRhbGljIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICB7c3ViTGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge2Rpc2NvdW50ID4gMCAmJiBkaXNjb3VudFRleHQgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkQmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgcHJvbWluZW5jZT1cInN0cm9uZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7ZGlzY291bnRUZXh0fVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRCYWRnZT5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAge25vdGljZSA/IChcbiAgICAgICAgICAgICAgICA8TWF4V2lkdGhUZXh0IGFzPVwicFwiIHByb21pbmVuY2U9XCJ3ZWFrXCIgdmFyaWFudD1cImNhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgIHtub3RpY2V9XG4gICAgICAgICAgICAgICAgPC9NYXhXaWR0aFRleHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgIDxTdHlsZWRSZXNvdXJjZU5hbWUgYW5pbWF0ZWQ9e2FuaW1hdGVkfSBpc092ZXJsYXk9e2lzT3ZlcmxheX0+XG4gICAgICAgICAgICAgIHtpc0RlZmluZWRcbiAgICAgICAgICAgICAgICA/IENoaWxkcmVuLm1hcChjaGlsZHJlbiwgY2hpbGQgPT5cbiAgICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgICAgPyBjbG9uZUVsZW1lbnQoY2hpbGQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGV4dE5vdERlZmluZWQgfHwgbG9jYWxlc1snZXN0aW1hdGUuY29zdC5ub3REZWZpbmVkJ119XG4gICAgICAgICAgICA8L1N0eWxlZFJlc291cmNlTmFtZT5cbiAgICAgICAgICA8L0xlZnRTaWRlPlxuICAgICAgICA8L0NlbGw+XG4gICAgICAgIHshaXNPdmVybGF5ID8gKFxuICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGxcbiAgICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyfVxuICAgICAgICAgICAgcHJpbWFyeT17aXNQcmltYXJ5QmFja2dyb3VuZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7IW5vUHJpY2UgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPFN0eWxlTm9QcmljZUl0ZW1cbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtcbiAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRJdGVtUHJpY2UgPT09IDAgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICA/ICd3ZWFrJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2RlZmF1bHQnXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ25ldXRyYWwnXG4gICAgICAgICAgICAgICAgICAgICAgOiAncHJpbWFyeSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHN0cmlrZVRocm91Z2g9e3N0cmlrZVRocm91Z2h9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PXtub0l0ZXJhdGlvblRleHQgPyAnaGVhZGluZ1NtYWxsJyA6ICdib2R5U3Ryb25nJ31cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cHJpY2VUZXh0fVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHRcbiAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXROdW1iZXIoY29tcHV0ZWRJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIHtub0l0ZXJhdGlvblRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVNtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgL3tub0l0ZXJhdGlvblRleHR9XG4gICAgICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHQgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPiAwXG4gICAgICAgICAgICAgICAgICAgID8gYCAtICR7Zm9ybWF0TnVtYmVyKGNvbXB1dGVkTWF4SXRlbVByaWNlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1N0eWxlTm9QcmljZUl0ZW0+XG4gICAgICAgICAgICAgICAgeyhhbW91bnQgLSBhbW91bnRGcmVlICE9PSAxICYmIGNvbXB1dGVkSXRlbVByaWNlID4gMCkgfHxcbiAgICAgICAgICAgICAgICAobWF4QW1vdW50ID4gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDApID8gKFxuICAgICAgICAgICAgICAgICAgPFRleHRBbGlnblJpZ2h0IGFzPVwicFwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtmb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdDogJ2hvdXJzJyxcbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGxvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcuaG91cnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge1RJTUVfUkVMQVRFRF9VTklULmluY2x1ZGVzKHVuaXQgYXMgVW5pdHMpXG4gICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy4ke3VuaXQgYXMgVW5pdHN9LmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgICAgOiBgLyR7dW5pdH1gfVxuICAgICAgICAgICAgICAgICAgICB7IW5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgPyBgLyR7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VzdGltYXRlLmNvc3QudW5pdHMuaG91cnMubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIDwvVGV4dEFsaWduUmlnaHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9Sb3c+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
46
- const MaxWidthText = /* @__PURE__ */ _styled(Text, process.env.NODE_ENV === "production" ? {
47
- target: "e1kzy2rr4"
48
- } : {
49
- target: "e1kzy2rr4",
50
- label: "MaxWidthText"
51
- })(process.env.NODE_ENV === "production" ? {
52
- name: "88bww",
53
- styles: "max-width:75%"
54
- } : {
55
- name: "88bww",
56
- styles: "max-width:75%/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0ZpQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Db21wb25lbnRzL0l0ZW0udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBIZWxwQ2lyY2xlT3V0bGluZUljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgeyBCYWRnZSwgU3RhY2ssIFRleHQsIFRvb2x0aXAsIHpvb21JbiB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUlkLFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBPdmVybGF5Um93LFxuICBwcmljZUNlbGwsXG4gIENlbGwgYXMgU3R5bGVkQ2VsbCxcbiAgU3R5bGVkRGl2LFxuICBTdHlsZWRMZWZ0U2lkZSxcbiAgU3R5bGVkVHIsXG59IGZyb20gJy4uL2NvbXBvbmVudFN0eWxlJ1xuaW1wb3J0IHtcbiAgTUFYX0NFTExfV0lEVEgsXG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyxcbiAgbXVsdGlwbGllcixcbn0gZnJvbSAnLi4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4uL2hlbHBlcidcbmltcG9ydCB7IHVzZU92ZXJsYXkgfSBmcm9tICcuLi9PdmVybGF5Q29udGV4dCdcbmltcG9ydCB0eXBlIHtcbiAgQmFyZUVzdGltYXRlUHJvZHVjdCxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuLi90eXBlcydcblxuY29uc3QgVElNRV9SRUxBVEVEX1VOSVQ6IFVuaXRzW10gPSBbXG4gICdzZWNvbmRzJyxcbiAgJ21pbnV0ZXMnLFxuICAnaG91cnMnLFxuICAnZGF5cycsXG4gICdtb250aHMnLFxuXVxuXG5jb25zdCBTdHlsZWRSZXNvdXJjZU5hbWUgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnaXNPdmVybGF5JywgJ2FuaW1hdGVkJ10uaW5jbHVkZXMocHJvcCksXG59KTx7XG4gIGlzT3ZlcmxheTogYm9vbGVhblxuICBhbmltYXRlZDogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246ICR7KHsgaXNPdmVybGF5IH0pID0+IChpc092ZXJsYXkgPyAnaW5pdGlhbCcgOiAncmlnaHQnKX07XG5cbiAgJHsoeyBpc092ZXJsYXksIGFuaW1hdGVkIH0pID0+XG4gICAgaXNPdmVybGF5XG4gICAgICA/IGNzc2BcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbmltYXRpb246ICR7YW5pbWF0ZWQgPyBjc3NgODAwbXMgJHt6b29tSW59YCA6ICcnfTtcbiAgICAgICAgYFxuICAgICAgOiBudWxsfVxuYFxuXG5jb25zdCBTdHlsZWRCYWRnZSA9IHN0eWxlZChCYWRnZSlgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5gXG5cbmNvbnN0IFN0eWxlZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuYFxuXG5jb25zdCBNYXhXaWR0aFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1heC13aWR0aDogNzUlO1xuYFxuXG5jb25zdCBUZXh0QWxpZ25SaWdodCA9IHN0eWxlZChUZXh0KWBcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5gXG5cbmNvbnN0IFN0eWxlZFRvb2x0aXAgPSBzdHlsZWQoVG9vbHRpcClgXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKFN0eWxlZENlbGwpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG5gXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXRlbUNhbGxiYWNrOiAoYW1vdW50OiBudW1iZXIsIGlzVmFyaWFudDogYm9vbGVhbikgPT4gdm9pZFxuICBhbW91bnQ6IG51bWJlclxuICBtYXhBbW91bnQ6IG51bWJlclxuICB1bml0OiBzdHJpbmdcbn1cblxudHlwZSBJdGVtUHJvcHMgPSB7XG4gIGFtb3VudD86IG51bWJlclxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXJlIGZyZWUuIEl0IHdpbGwgYmUgZGVkdWN0ZWQgdG8gcHJpY2Ugb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBhbW91bnRGcmVlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgYW5pbWF0ZWQ/OiBib29sZWFuXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlXG4gIGRpc2NvdW50PzogbnVtYmVyXG4gIGRpc2NvdW50VGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheVxuICAgKi9cbiAgaGlkZUZyb21PdmVybGF5PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0RlZmluZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRmlyc3RFbGVtZW50PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBpc1ByaW1hcnlCYWNrZ3JvdW5kPzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgLyoqXG4gICAqIFN0cmluZyB0aGF0IGlzIGRpc3BsYXllZCBvbiBsZWZ0IHBhcnQgb2YgdGhlIGl0ZW0sIGl0IGRlZmluZXMgdGhlIGl0ZW1cbiAgICovXG4gIGxhYmVsPzogUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgdmFyaWFudFxuICAgKi9cbiAgbGFiZWxUZXh0VmFyaWFudD86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsndmFyaWFudCddXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgKi9cbiAgbGFiZWxUZXh0UHJvbWluZW5jZT86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsncHJvbWluZW5jZSddXG4gIC8qKlxuICAgKiBJZiB5b3VyIHByaWNlIGhhcyBhIGxvdCBvZiBudW1iZXIgYWZ0ZXIgZGVjaW1hbCBwb2ludCAoZXg6IDAuMDAwMDA3NikgLSB1cCA4IGZyYWN0aW9uIGRpZ2l0c1xuICAgKi9cbiAgbG9uZ0ZyYWN0aW9uRGlnaXRzPzogYm9vbGVhblxuICAvKipcbiAgICogQ3JlYXRlIGEgcmFuZ2UgcHJpY2Ugd2l0aCBbYW1vdW50IC0gbWF4QW1vdW50XSB2YWx1ZXMgYW5kIHByaWNlc1xuICAgKi9cbiAgbWF4QW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBQcmljZSBwZXIgbW9udGhcbiAgICovXG4gIG1vbnRobHlQcmljZT86IG51bWJlclxuICAvKipcbiAgICogUmVtb3ZlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICovXG4gIG5vQm9yZGVyPzogYm9vbGVhblxuICAvKipcbiAgICogSWYgdGhlIHByaWNlIG9mIHRoZSBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIGVuYWJsZSB0aGlzIHByb3AuIGV4OiA1a2cgb2YgY2hvY29sYXRlIGlzIHNhbWUgcHJpY2Ugb3ZlciAxIG1vbnRoIG9yIDEgaG91ci5cbiAgICovXG4gIG5vSXRlcmF0aW9uPzogYm9vbGVhblxuICBub0l0ZXJhdGlvblRleHQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgcHJpY2Ugb24gdGhlIHJpZ2h0IHNlY3Rpb24gb2YgdGhlIHRhYmxlXG4gICAqL1xuICBub1ByaWNlPzogYm9vbGVhblxuICAvKipcbiAgICogTm90aWNlIHRvIGRpc3BsYXkgYmVsb3cgdGhlIGxhYmVsXG4gICAqL1xuICBub3RpY2U/OiBzdHJpbmdcbiAgb25BbW91bnRDaGFuZ2U/OiAoYW1vdW50OiBudW1iZXIpID0+IHZvaWRcbiAgLyoqXG4gICAqIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICovXG4gIHByaWNlPzogbnVtYmVyXG4gIHByaWNlVGV4dD86IFJlYWN0Tm9kZVxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICAvKipcbiAgICogSGlkZSBpdGVtIGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICovXG4gIHNob3VsZEJlSGlkZGVuPzogYm9vbGVhblxuICAvKipcbiAgICogRGlzcGxheSBhIGNvbXBsZW1lbnRhcnkgdGV4dCBvbiB0aGUgcmlnaHQgb2YgdGhlIGxhYmVsXG4gICAqL1xuICBzdWJMYWJlbD86IHN0cmluZ1xuICAvKipcbiAgICogSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtIGxpa2VcbiAgICovXG4gIHRhYnVsYXRpb24/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRleHQgdG8gZGlzcGxheSBpbiBjYXNlIG9mIG5vdCBkZWZpbmVkIHZhbHVlXG4gICAqL1xuICB0ZXh0Tm90RGVmaW5lZD86IHN0cmluZ1xuICAvKipcbiAgICogRGlzcGxheSBuZWFyIGxhYmVsLCBhbiBpY29uIHdpdGggYSB0b29sdGlwIHRoYXQgY29udGFpbnMgeW91ciB0ZXh0XG4gICAqL1xuICB0b29sdGlwSW5mbz86IHN0cmluZ1xuICAvKipcbiAgICogVW5pdCBvZiB5b3VyIGl0ZW0sIGV4YW1wbGVzOiBHQiwgTUIsIE5vZGUsIFF1ZXJpZXMsIGV0Yy5cbiAgICovXG4gIHVuaXQ/OlxuICAgIHwgJ21iJ1xuICAgIHwgJ2diJ1xuICAgIHwgJ3RiJ1xuICAgIHwgJ3NlY29uZHMnXG4gICAgfCAnbWludXRlcydcbiAgICB8ICdob3VycydcbiAgICB8ICdkYXlzJ1xuICAgIHwgJ21vbnRocydcbiAgICB8ICd5ZWFycydcbiAgICAvLyBBbGxvdyBhIHN0cmluZyBmb3IgdW5pdCBidXQga2VlcCBhdXRvY29tcGxldGUgZm9yIHRoZSBhYm92ZSB2YWx1ZXNcbiAgICB8IChzdHJpbmcgJiBOb25OdWxsYWJsZTx1bmtub3duPilcbiAgLypcbiAgICogVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gICAqL1xuICBzdHJpa2VUaHJvdWdoPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZU5vUHJpY2VJdGVtID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuZXhwb3J0IGNvbnN0IEl0ZW0gPSBtZW1vKFxuICAoe1xuICAgIGRpc2NvdW50ID0gMCxcbiAgICBwcmljZVRleHQsXG4gICAgZGlzY291bnRUZXh0LFxuICAgIGxhYmVsLFxuICAgIHRvb2x0aXBJbmZvLCAvLyBTaG93cyBhbiBpY29uIHdpdGggdG9vbHRpcCB0aGF0IGNvbnRhaW5zIHRoaXMgdGV4dFxuICAgIHN1YkxhYmVsID0gJycsIC8vIFVzdWFsbHkgdXNlZCBmb3Igc2hvd2luZyBhbW91bnQgdGhhdCBpcyBmcmVlXG4gICAgcHJpY2U6IGJhc2VQcmljZSA9IDAsIC8vIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICBtb250aGx5UHJpY2UgPSAwLCAvLyBQcmljZSBwZXIgbW9udGhcbiAgICB1bml0OiBiYXNlVW5pdCwgLy8gQ2FuIGJlIEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgIGFtb3VudDogY3VycmVudEFtb3VudCA9IDEsIC8vIEN1cnJlbnQgbnVtYmVyIG9mIGl0ZW1zXG4gICAgb25BbW91bnRDaGFuZ2UsXG4gICAgYW1vdW50RnJlZSA9IDAsIC8vIEFtb3VudCB0aGF0IGlzIGZyZWUgLSBvZmZlcmVkIGJ5IGNvbXBhbnlcbiAgICBtYXhBbW91bnQgPSAwLCAvLyBNYXggYW1vdW50IC0gdXNlZCBmb3Iga3ViZXJuZXRlcyBmb3IgZXhhbXBsZVxuICAgIGxvbmdGcmFjdGlvbkRpZ2l0cyA9IGZhbHNlLCAvLyBJbiBjYXNlIHByaWNlIGlzIHJlYWxseSBsb25nIDAuMDAwMDA3NiAtIHVwIDcgZnJhY3Rpb24gZGlnaXRzXG4gICAgbm9JdGVyYXRpb24gPSBmYWxzZSwgLy8gaWYgaXRlbSBpcyBub3QgYmFzZWQgb24gdGltZSAoZXg6IGRvd25sb2FkLCB1cGxvYWQsIHRyYW5zZmVyKVxuICAgIG5vSXRlcmF0aW9uVGV4dCxcbiAgICBub0JvcmRlciwgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYm90dG9tIG9mIHRoZSBpdGVtXG4gICAgbm9QcmljZSwgLy8gcmVtb3ZlIHRoZSBwcmljZSBvbiByaWdodCBzaWRlIG9mIHRoZSB0YWJsZVxuICAgIGlzRGVmaW5lZCA9IHRydWUsXG4gICAgY2hpbGRyZW4gPSBudWxsLFxuICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNMYXN0RWxlbWVudCA9IGZhbHNlLFxuICAgIGlzUHJpbWFyeUJhY2tncm91bmQgPSBmYWxzZSxcbiAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgIGl0ZXJhdGlvbjogcmVjZWl2ZWRJdGVyYXRpb24sIC8vIE9iamVjdCBmcm9tIHBhcmVudCB0aGF0IGNvbnRhaW5zIHRpbWUgcGVyaW9kIChob3VycywgZGF5cywgbW9udGhzKVxuICAgIHNob3VsZEJlSGlkZGVuID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsXG4gICAgaGlkZUZyb21PdmVybGF5ID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaW4gYW55IGNhc2VcbiAgICB0ZXh0Tm90RGVmaW5lZCwgLy8gVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICBhbmltYXRlZCA9IGZhbHNlLCAvLyBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgIHRhYnVsYXRpb24sIC8vIEluY3JlYXNlIGxlZnQgcGFkZGluZyBvZiB0aGUgaXRlbVxuICAgIGxhYmVsVGV4dFZhcmlhbnQsIC8vIFRvIGNoYW5nZSBsZWZ0IGNlbGwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAgbGFiZWxUZXh0UHJvbWluZW5jZSwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHByb21pbmVuY2VcbiAgICBub3RpY2UsIC8vIFRvIGRpc3BsYXkgYSBncmF5IHRleHQgYmVsb3cgdGhlIGxhYmVsXG4gICAgc3RyaWtlVGhyb3VnaCwgLy8gVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gIH06IEl0ZW1Qcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgbG9jYWxlcywgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuXG4gICAgbGV0IGl0ZXJhdGlvbjogSXRlcmF0aW9uIHwgdW5kZWZpbmVkXG5cbiAgICBpZiAobm9JdGVyYXRpb24pIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHtcbiAgICAgICAgLi4uKHJlY2VpdmVkSXRlcmF0aW9uID8/IHsgdmFsdWU6IDAgfSksXG4gICAgICAgIHVuaXQ6ICdob3VycycsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHJlY2VpdmVkSXRlcmF0aW9uXG4gICAgfVxuXG4gICAgY29uc3QgcHJpY2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChtb250aGx5UHJpY2UgJiYgYmFzZVByaWNlID09PSAwKSB7XG4gICAgICAgIHJldHVybiBtb250aGx5UHJpY2UgLyBtdWx0aXBsaWVyLm1vbnRoc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVByaWNlXG4gICAgfSwgW2Jhc2VQcmljZSwgbW9udGhseVByaWNlXSlcblxuICAgIGNvbnN0IHVuaXQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghYmFzZVVuaXQpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QudW5pdHMuZ2IubGFiZWwnXVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVVuaXRcbiAgICB9LCBbYmFzZVVuaXQsIGxvY2FsZXNdKVxuXG4gICAgY29uc3QgeyBpc092ZXJsYXkgfSA9IHVzZU92ZXJsYXkoKVxuICAgIGNvbnN0IFJvdyA9IGlzT3ZlcmxheSA/IE92ZXJsYXlSb3cgOiBTdHlsZWRUclxuICAgIGNvbnN0IENlbGwgPSBpc092ZXJsYXkgPyBTdHlsZWRDZWxsLndpdGhDb21wb25lbnQoJ2RpdicpIDogU3R5bGVkQ2VsbFxuICAgIGNvbnN0IExlZnRTaWRlID0gaXNPdmVybGF5ID8gJ2RpdicgOiBTdHlsZWRMZWZ0U2lkZVxuXG4gICAgY29uc3QgW2Ftb3VudCwgc2V0QW1vdW50XSA9IHVzZVN0YXRlKGN1cnJlbnRBbW91bnQpXG4gICAgY29uc3QgW2lzVmFyaWFudCwgc2V0SXNWYXJpYW50XSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHNldEFtb3VudChjdXJyZW50QW1vdW50KSwgW3NldEFtb3VudCwgY3VycmVudEFtb3VudF0pXG4gICAgdXNlRWZmZWN0KCgpID0+IG9uQW1vdW50Q2hhbmdlPy4oYW1vdW50KSwgW29uQW1vdW50Q2hhbmdlLCBhbW91bnRdKVxuXG4gICAgY29uc3QgaXRlbUNhbGxiYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAobG9jYWxBbW91bnQ6IG51bWJlciwgbG9jYWxJc1ZhcmlhbnQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgc2V0QW1vdW50KGxvY2FsQW1vdW50KVxuICAgICAgICBzZXRJc1ZhcmlhbnQobG9jYWxJc1ZhcmlhbnQpXG4gICAgICB9LFxuICAgICAgW3NldEFtb3VudCwgc2V0SXNWYXJpYW50XSxcbiAgICApXG5cbiAgICBjb25zdCBpZCA9IHVzZUlkKClcblxuICAgIC8vIFdlIHJlbW92ZSBJdGVtIGZyb20gb2JqZWN0IGxpc3Qgd2hlbiBJZW0gY29tcG9uZW50IHVubW91bnQgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgIHVzZUVmZmVjdChcbiAgICAgICgpID0+ICgpID0+IHByb2R1Y3RzQ2FsbGJhY2s/LnJlbW92ZSh7IGlkIH0pLFxuICAgICAgW2lkLCBwcm9kdWN0c0NhbGxiYWNrXSxcbiAgICApXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFpc092ZXJsYXkpIHtcbiAgICAgICAgcHJvZHVjdHNDYWxsYmFjaz8uYWRkKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBpc1ZhcmlhbnQsXG4gICAgICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICBub0l0ZXJhdGlvbixcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBwcmljZSxcbiAgICAgIGRpc2NvdW50LFxuICAgICAgYW1vdW50LFxuICAgICAgaWQsXG4gICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgbWF4QW1vdW50LFxuICAgICAgbm9JdGVyYXRpb24sXG4gICAgICBpc1ZhcmlhbnQsXG4gICAgICBhbW91bnRGcmVlLFxuICAgICAgaXNPdmVybGF5LFxuICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgIF0pXG5cbiAgICBjb25zdCBjb21wdXRlZEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50LFxuICAgICAgICAgIGFtb3VudEZyZWUsXG4gICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgcHJpY2UsXG4gICAgICAgICAgdGltZUFtb3VudDogbm9JdGVyYXRpb24gPyAxIDogKGl0ZXJhdGlvbj8udmFsdWUgPz8gMSksXG4gICAgICAgICAgdGltZVVuaXQ6IG5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IChpdGVyYXRpb24/LnVuaXQgPz8gJ2hvdXJzJyksXG4gICAgICAgIH0pLFxuICAgICAgW3ByaWNlLCBhbW91bnQsIGFtb3VudEZyZWUsIGl0ZXJhdGlvbiwgbm9JdGVyYXRpb24sIGRpc2NvdW50XSxcbiAgICApXG5cbiAgICBjb25zdCBjb21wdXRlZE1heEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50OiBtYXhBbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIG1heEFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFpdGVyYXRpb24/LnVuaXQpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24/LnVuaXRdXG4gICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbj8udW5pdF1cbiAgICB9LCBbaXRlcmF0aW9uPy51bml0LCBsb25nRnJhY3Rpb25EaWdpdHNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxSb3dcbiAgICAgICAgaGlkZUZyb21PdmVybGF5PXtoaWRlRnJvbU92ZXJsYXl9XG4gICAgICAgIGlzRmlyc3RFbGVtZW50PXtpc0ZpcnN0RWxlbWVudH1cbiAgICAgICAgc2hvdWxkQmVIaWRkZW49e3Nob3VsZEJlSGlkZGVufVxuICAgICAgPlxuICAgICAgICA8Q2VsbFxuICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyICYmICFpc092ZXJsYXl9XG4gICAgICAgICAgdGFidWxhdGlvbj17dGFidWxhdGlvbn1cbiAgICAgICAgICB3aWR0aD17IWlzT3ZlcmxheSA/IE1BWF9DRUxMX1dJRFRIIDogJ2luaGVyaXQnfVxuICAgICAgICA+XG4gICAgICAgICAgPExlZnRTaWRlPlxuICAgICAgICAgICAgPFN0YWNrPlxuICAgICAgICAgICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtsYWJlbFRleHRQcm9taW5lbmNlID8/ICdkZWZhdWx0J31cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e2xhYmVsVGV4dFZhcmlhbnQgPz8gJ2JvZHknfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAge3Rvb2x0aXBJbmZvID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZERpdj5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRvb2x0aXAgdGV4dD17dG9vbHRpcEluZm99PlxuICAgICAgICAgICAgICAgICAgICAgIDxIZWxwQ2lyY2xlT3V0bGluZUljb24gc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVG9vbHRpcD5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgIHtzdWJMYWJlbCAmJiAhaXNPdmVybGF5ID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHQgYXM9XCJwXCIgaXRhbGljIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICB7c3ViTGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge2Rpc2NvdW50ID4gMCAmJiBkaXNjb3VudFRleHQgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkQmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgcHJvbWluZW5jZT1cInN0cm9uZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7ZGlzY291bnRUZXh0fVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRCYWRnZT5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAge25vdGljZSA/IChcbiAgICAgICAgICAgICAgICA8TWF4V2lkdGhUZXh0IGFzPVwicFwiIHByb21pbmVuY2U9XCJ3ZWFrXCIgdmFyaWFudD1cImNhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgIHtub3RpY2V9XG4gICAgICAgICAgICAgICAgPC9NYXhXaWR0aFRleHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgIDxTdHlsZWRSZXNvdXJjZU5hbWUgYW5pbWF0ZWQ9e2FuaW1hdGVkfSBpc092ZXJsYXk9e2lzT3ZlcmxheX0+XG4gICAgICAgICAgICAgIHtpc0RlZmluZWRcbiAgICAgICAgICAgICAgICA/IENoaWxkcmVuLm1hcChjaGlsZHJlbiwgY2hpbGQgPT5cbiAgICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgICAgPyBjbG9uZUVsZW1lbnQoY2hpbGQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGV4dE5vdERlZmluZWQgfHwgbG9jYWxlc1snZXN0aW1hdGUuY29zdC5ub3REZWZpbmVkJ119XG4gICAgICAgICAgICA8L1N0eWxlZFJlc291cmNlTmFtZT5cbiAgICAgICAgICA8L0xlZnRTaWRlPlxuICAgICAgICA8L0NlbGw+XG4gICAgICAgIHshaXNPdmVybGF5ID8gKFxuICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGxcbiAgICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyfVxuICAgICAgICAgICAgcHJpbWFyeT17aXNQcmltYXJ5QmFja2dyb3VuZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7IW5vUHJpY2UgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPFN0eWxlTm9QcmljZUl0ZW1cbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtcbiAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRJdGVtUHJpY2UgPT09IDAgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICA/ICd3ZWFrJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2RlZmF1bHQnXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ25ldXRyYWwnXG4gICAgICAgICAgICAgICAgICAgICAgOiAncHJpbWFyeSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHN0cmlrZVRocm91Z2g9e3N0cmlrZVRocm91Z2h9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PXtub0l0ZXJhdGlvblRleHQgPyAnaGVhZGluZ1NtYWxsJyA6ICdib2R5U3Ryb25nJ31cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cHJpY2VUZXh0fVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHRcbiAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXROdW1iZXIoY29tcHV0ZWRJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIHtub0l0ZXJhdGlvblRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVNtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgL3tub0l0ZXJhdGlvblRleHR9XG4gICAgICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHQgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPiAwXG4gICAgICAgICAgICAgICAgICAgID8gYCAtICR7Zm9ybWF0TnVtYmVyKGNvbXB1dGVkTWF4SXRlbVByaWNlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1N0eWxlTm9QcmljZUl0ZW0+XG4gICAgICAgICAgICAgICAgeyhhbW91bnQgLSBhbW91bnRGcmVlICE9PSAxICYmIGNvbXB1dGVkSXRlbVByaWNlID4gMCkgfHxcbiAgICAgICAgICAgICAgICAobWF4QW1vdW50ID4gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDApID8gKFxuICAgICAgICAgICAgICAgICAgPFRleHRBbGlnblJpZ2h0IGFzPVwicFwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtmb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdDogJ2hvdXJzJyxcbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGxvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcuaG91cnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge1RJTUVfUkVMQVRFRF9VTklULmluY2x1ZGVzKHVuaXQgYXMgVW5pdHMpXG4gICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy4ke3VuaXQgYXMgVW5pdHN9LmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgICAgOiBgLyR7dW5pdH1gfVxuICAgICAgICAgICAgICAgICAgICB7IW5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgPyBgLyR7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VzdGltYXRlLmNvc3QudW5pdHMuaG91cnMubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIDwvVGV4dEFsaWduUmlnaHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9Sb3c+XG4gICAgKVxuICB9LFxuKVxuIl19 */",
57
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
58
- });
59
- const TextAlignRight = /* @__PURE__ */ _styled(Text, process.env.NODE_ENV === "production" ? {
60
- target: "e1kzy2rr3"
61
- } : {
62
- target: "e1kzy2rr3",
63
- label: "TextAlignRight"
64
- })(process.env.NODE_ENV === "production" ? {
65
- name: "2qga7i",
66
- styles: "text-align:right"
67
- } : {
68
- name: "2qga7i",
69
- styles: "text-align:right/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0ZtQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Db21wb25lbnRzL0l0ZW0udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBIZWxwQ2lyY2xlT3V0bGluZUljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgeyBCYWRnZSwgU3RhY2ssIFRleHQsIFRvb2x0aXAsIHpvb21JbiB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUlkLFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBPdmVybGF5Um93LFxuICBwcmljZUNlbGwsXG4gIENlbGwgYXMgU3R5bGVkQ2VsbCxcbiAgU3R5bGVkRGl2LFxuICBTdHlsZWRMZWZ0U2lkZSxcbiAgU3R5bGVkVHIsXG59IGZyb20gJy4uL2NvbXBvbmVudFN0eWxlJ1xuaW1wb3J0IHtcbiAgTUFYX0NFTExfV0lEVEgsXG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyxcbiAgbXVsdGlwbGllcixcbn0gZnJvbSAnLi4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4uL2hlbHBlcidcbmltcG9ydCB7IHVzZU92ZXJsYXkgfSBmcm9tICcuLi9PdmVybGF5Q29udGV4dCdcbmltcG9ydCB0eXBlIHtcbiAgQmFyZUVzdGltYXRlUHJvZHVjdCxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuLi90eXBlcydcblxuY29uc3QgVElNRV9SRUxBVEVEX1VOSVQ6IFVuaXRzW10gPSBbXG4gICdzZWNvbmRzJyxcbiAgJ21pbnV0ZXMnLFxuICAnaG91cnMnLFxuICAnZGF5cycsXG4gICdtb250aHMnLFxuXVxuXG5jb25zdCBTdHlsZWRSZXNvdXJjZU5hbWUgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnaXNPdmVybGF5JywgJ2FuaW1hdGVkJ10uaW5jbHVkZXMocHJvcCksXG59KTx7XG4gIGlzT3ZlcmxheTogYm9vbGVhblxuICBhbmltYXRlZDogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246ICR7KHsgaXNPdmVybGF5IH0pID0+IChpc092ZXJsYXkgPyAnaW5pdGlhbCcgOiAncmlnaHQnKX07XG5cbiAgJHsoeyBpc092ZXJsYXksIGFuaW1hdGVkIH0pID0+XG4gICAgaXNPdmVybGF5XG4gICAgICA/IGNzc2BcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbmltYXRpb246ICR7YW5pbWF0ZWQgPyBjc3NgODAwbXMgJHt6b29tSW59YCA6ICcnfTtcbiAgICAgICAgYFxuICAgICAgOiBudWxsfVxuYFxuXG5jb25zdCBTdHlsZWRCYWRnZSA9IHN0eWxlZChCYWRnZSlgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5gXG5cbmNvbnN0IFN0eWxlZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuYFxuXG5jb25zdCBNYXhXaWR0aFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1heC13aWR0aDogNzUlO1xuYFxuXG5jb25zdCBUZXh0QWxpZ25SaWdodCA9IHN0eWxlZChUZXh0KWBcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5gXG5cbmNvbnN0IFN0eWxlZFRvb2x0aXAgPSBzdHlsZWQoVG9vbHRpcClgXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKFN0eWxlZENlbGwpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG5gXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXRlbUNhbGxiYWNrOiAoYW1vdW50OiBudW1iZXIsIGlzVmFyaWFudDogYm9vbGVhbikgPT4gdm9pZFxuICBhbW91bnQ6IG51bWJlclxuICBtYXhBbW91bnQ6IG51bWJlclxuICB1bml0OiBzdHJpbmdcbn1cblxudHlwZSBJdGVtUHJvcHMgPSB7XG4gIGFtb3VudD86IG51bWJlclxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXJlIGZyZWUuIEl0IHdpbGwgYmUgZGVkdWN0ZWQgdG8gcHJpY2Ugb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBhbW91bnRGcmVlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgYW5pbWF0ZWQ/OiBib29sZWFuXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlXG4gIGRpc2NvdW50PzogbnVtYmVyXG4gIGRpc2NvdW50VGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheVxuICAgKi9cbiAgaGlkZUZyb21PdmVybGF5PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0RlZmluZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRmlyc3RFbGVtZW50PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBpc1ByaW1hcnlCYWNrZ3JvdW5kPzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgLyoqXG4gICAqIFN0cmluZyB0aGF0IGlzIGRpc3BsYXllZCBvbiBsZWZ0IHBhcnQgb2YgdGhlIGl0ZW0sIGl0IGRlZmluZXMgdGhlIGl0ZW1cbiAgICovXG4gIGxhYmVsPzogUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgdmFyaWFudFxuICAgKi9cbiAgbGFiZWxUZXh0VmFyaWFudD86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsndmFyaWFudCddXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgKi9cbiAgbGFiZWxUZXh0UHJvbWluZW5jZT86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsncHJvbWluZW5jZSddXG4gIC8qKlxuICAgKiBJZiB5b3VyIHByaWNlIGhhcyBhIGxvdCBvZiBudW1iZXIgYWZ0ZXIgZGVjaW1hbCBwb2ludCAoZXg6IDAuMDAwMDA3NikgLSB1cCA4IGZyYWN0aW9uIGRpZ2l0c1xuICAgKi9cbiAgbG9uZ0ZyYWN0aW9uRGlnaXRzPzogYm9vbGVhblxuICAvKipcbiAgICogQ3JlYXRlIGEgcmFuZ2UgcHJpY2Ugd2l0aCBbYW1vdW50IC0gbWF4QW1vdW50XSB2YWx1ZXMgYW5kIHByaWNlc1xuICAgKi9cbiAgbWF4QW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBQcmljZSBwZXIgbW9udGhcbiAgICovXG4gIG1vbnRobHlQcmljZT86IG51bWJlclxuICAvKipcbiAgICogUmVtb3ZlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICovXG4gIG5vQm9yZGVyPzogYm9vbGVhblxuICAvKipcbiAgICogSWYgdGhlIHByaWNlIG9mIHRoZSBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIGVuYWJsZSB0aGlzIHByb3AuIGV4OiA1a2cgb2YgY2hvY29sYXRlIGlzIHNhbWUgcHJpY2Ugb3ZlciAxIG1vbnRoIG9yIDEgaG91ci5cbiAgICovXG4gIG5vSXRlcmF0aW9uPzogYm9vbGVhblxuICBub0l0ZXJhdGlvblRleHQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgcHJpY2Ugb24gdGhlIHJpZ2h0IHNlY3Rpb24gb2YgdGhlIHRhYmxlXG4gICAqL1xuICBub1ByaWNlPzogYm9vbGVhblxuICAvKipcbiAgICogTm90aWNlIHRvIGRpc3BsYXkgYmVsb3cgdGhlIGxhYmVsXG4gICAqL1xuICBub3RpY2U/OiBzdHJpbmdcbiAgb25BbW91bnRDaGFuZ2U/OiAoYW1vdW50OiBudW1iZXIpID0+IHZvaWRcbiAgLyoqXG4gICAqIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICovXG4gIHByaWNlPzogbnVtYmVyXG4gIHByaWNlVGV4dD86IFJlYWN0Tm9kZVxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICAvKipcbiAgICogSGlkZSBpdGVtIGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICovXG4gIHNob3VsZEJlSGlkZGVuPzogYm9vbGVhblxuICAvKipcbiAgICogRGlzcGxheSBhIGNvbXBsZW1lbnRhcnkgdGV4dCBvbiB0aGUgcmlnaHQgb2YgdGhlIGxhYmVsXG4gICAqL1xuICBzdWJMYWJlbD86IHN0cmluZ1xuICAvKipcbiAgICogSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtIGxpa2VcbiAgICovXG4gIHRhYnVsYXRpb24/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRleHQgdG8gZGlzcGxheSBpbiBjYXNlIG9mIG5vdCBkZWZpbmVkIHZhbHVlXG4gICAqL1xuICB0ZXh0Tm90RGVmaW5lZD86IHN0cmluZ1xuICAvKipcbiAgICogRGlzcGxheSBuZWFyIGxhYmVsLCBhbiBpY29uIHdpdGggYSB0b29sdGlwIHRoYXQgY29udGFpbnMgeW91ciB0ZXh0XG4gICAqL1xuICB0b29sdGlwSW5mbz86IHN0cmluZ1xuICAvKipcbiAgICogVW5pdCBvZiB5b3VyIGl0ZW0sIGV4YW1wbGVzOiBHQiwgTUIsIE5vZGUsIFF1ZXJpZXMsIGV0Yy5cbiAgICovXG4gIHVuaXQ/OlxuICAgIHwgJ21iJ1xuICAgIHwgJ2diJ1xuICAgIHwgJ3RiJ1xuICAgIHwgJ3NlY29uZHMnXG4gICAgfCAnbWludXRlcydcbiAgICB8ICdob3VycydcbiAgICB8ICdkYXlzJ1xuICAgIHwgJ21vbnRocydcbiAgICB8ICd5ZWFycydcbiAgICAvLyBBbGxvdyBhIHN0cmluZyBmb3IgdW5pdCBidXQga2VlcCBhdXRvY29tcGxldGUgZm9yIHRoZSBhYm92ZSB2YWx1ZXNcbiAgICB8IChzdHJpbmcgJiBOb25OdWxsYWJsZTx1bmtub3duPilcbiAgLypcbiAgICogVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gICAqL1xuICBzdHJpa2VUaHJvdWdoPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZU5vUHJpY2VJdGVtID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuZXhwb3J0IGNvbnN0IEl0ZW0gPSBtZW1vKFxuICAoe1xuICAgIGRpc2NvdW50ID0gMCxcbiAgICBwcmljZVRleHQsXG4gICAgZGlzY291bnRUZXh0LFxuICAgIGxhYmVsLFxuICAgIHRvb2x0aXBJbmZvLCAvLyBTaG93cyBhbiBpY29uIHdpdGggdG9vbHRpcCB0aGF0IGNvbnRhaW5zIHRoaXMgdGV4dFxuICAgIHN1YkxhYmVsID0gJycsIC8vIFVzdWFsbHkgdXNlZCBmb3Igc2hvd2luZyBhbW91bnQgdGhhdCBpcyBmcmVlXG4gICAgcHJpY2U6IGJhc2VQcmljZSA9IDAsIC8vIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICBtb250aGx5UHJpY2UgPSAwLCAvLyBQcmljZSBwZXIgbW9udGhcbiAgICB1bml0OiBiYXNlVW5pdCwgLy8gQ2FuIGJlIEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgIGFtb3VudDogY3VycmVudEFtb3VudCA9IDEsIC8vIEN1cnJlbnQgbnVtYmVyIG9mIGl0ZW1zXG4gICAgb25BbW91bnRDaGFuZ2UsXG4gICAgYW1vdW50RnJlZSA9IDAsIC8vIEFtb3VudCB0aGF0IGlzIGZyZWUgLSBvZmZlcmVkIGJ5IGNvbXBhbnlcbiAgICBtYXhBbW91bnQgPSAwLCAvLyBNYXggYW1vdW50IC0gdXNlZCBmb3Iga3ViZXJuZXRlcyBmb3IgZXhhbXBsZVxuICAgIGxvbmdGcmFjdGlvbkRpZ2l0cyA9IGZhbHNlLCAvLyBJbiBjYXNlIHByaWNlIGlzIHJlYWxseSBsb25nIDAuMDAwMDA3NiAtIHVwIDcgZnJhY3Rpb24gZGlnaXRzXG4gICAgbm9JdGVyYXRpb24gPSBmYWxzZSwgLy8gaWYgaXRlbSBpcyBub3QgYmFzZWQgb24gdGltZSAoZXg6IGRvd25sb2FkLCB1cGxvYWQsIHRyYW5zZmVyKVxuICAgIG5vSXRlcmF0aW9uVGV4dCxcbiAgICBub0JvcmRlciwgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYm90dG9tIG9mIHRoZSBpdGVtXG4gICAgbm9QcmljZSwgLy8gcmVtb3ZlIHRoZSBwcmljZSBvbiByaWdodCBzaWRlIG9mIHRoZSB0YWJsZVxuICAgIGlzRGVmaW5lZCA9IHRydWUsXG4gICAgY2hpbGRyZW4gPSBudWxsLFxuICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNMYXN0RWxlbWVudCA9IGZhbHNlLFxuICAgIGlzUHJpbWFyeUJhY2tncm91bmQgPSBmYWxzZSxcbiAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgIGl0ZXJhdGlvbjogcmVjZWl2ZWRJdGVyYXRpb24sIC8vIE9iamVjdCBmcm9tIHBhcmVudCB0aGF0IGNvbnRhaW5zIHRpbWUgcGVyaW9kIChob3VycywgZGF5cywgbW9udGhzKVxuICAgIHNob3VsZEJlSGlkZGVuID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsXG4gICAgaGlkZUZyb21PdmVybGF5ID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaW4gYW55IGNhc2VcbiAgICB0ZXh0Tm90RGVmaW5lZCwgLy8gVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICBhbmltYXRlZCA9IGZhbHNlLCAvLyBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgIHRhYnVsYXRpb24sIC8vIEluY3JlYXNlIGxlZnQgcGFkZGluZyBvZiB0aGUgaXRlbVxuICAgIGxhYmVsVGV4dFZhcmlhbnQsIC8vIFRvIGNoYW5nZSBsZWZ0IGNlbGwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAgbGFiZWxUZXh0UHJvbWluZW5jZSwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHByb21pbmVuY2VcbiAgICBub3RpY2UsIC8vIFRvIGRpc3BsYXkgYSBncmF5IHRleHQgYmVsb3cgdGhlIGxhYmVsXG4gICAgc3RyaWtlVGhyb3VnaCwgLy8gVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gIH06IEl0ZW1Qcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgbG9jYWxlcywgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuXG4gICAgbGV0IGl0ZXJhdGlvbjogSXRlcmF0aW9uIHwgdW5kZWZpbmVkXG5cbiAgICBpZiAobm9JdGVyYXRpb24pIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHtcbiAgICAgICAgLi4uKHJlY2VpdmVkSXRlcmF0aW9uID8/IHsgdmFsdWU6IDAgfSksXG4gICAgICAgIHVuaXQ6ICdob3VycycsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHJlY2VpdmVkSXRlcmF0aW9uXG4gICAgfVxuXG4gICAgY29uc3QgcHJpY2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChtb250aGx5UHJpY2UgJiYgYmFzZVByaWNlID09PSAwKSB7XG4gICAgICAgIHJldHVybiBtb250aGx5UHJpY2UgLyBtdWx0aXBsaWVyLm1vbnRoc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVByaWNlXG4gICAgfSwgW2Jhc2VQcmljZSwgbW9udGhseVByaWNlXSlcblxuICAgIGNvbnN0IHVuaXQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghYmFzZVVuaXQpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QudW5pdHMuZ2IubGFiZWwnXVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVVuaXRcbiAgICB9LCBbYmFzZVVuaXQsIGxvY2FsZXNdKVxuXG4gICAgY29uc3QgeyBpc092ZXJsYXkgfSA9IHVzZU92ZXJsYXkoKVxuICAgIGNvbnN0IFJvdyA9IGlzT3ZlcmxheSA/IE92ZXJsYXlSb3cgOiBTdHlsZWRUclxuICAgIGNvbnN0IENlbGwgPSBpc092ZXJsYXkgPyBTdHlsZWRDZWxsLndpdGhDb21wb25lbnQoJ2RpdicpIDogU3R5bGVkQ2VsbFxuICAgIGNvbnN0IExlZnRTaWRlID0gaXNPdmVybGF5ID8gJ2RpdicgOiBTdHlsZWRMZWZ0U2lkZVxuXG4gICAgY29uc3QgW2Ftb3VudCwgc2V0QW1vdW50XSA9IHVzZVN0YXRlKGN1cnJlbnRBbW91bnQpXG4gICAgY29uc3QgW2lzVmFyaWFudCwgc2V0SXNWYXJpYW50XSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHNldEFtb3VudChjdXJyZW50QW1vdW50KSwgW3NldEFtb3VudCwgY3VycmVudEFtb3VudF0pXG4gICAgdXNlRWZmZWN0KCgpID0+IG9uQW1vdW50Q2hhbmdlPy4oYW1vdW50KSwgW29uQW1vdW50Q2hhbmdlLCBhbW91bnRdKVxuXG4gICAgY29uc3QgaXRlbUNhbGxiYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAobG9jYWxBbW91bnQ6IG51bWJlciwgbG9jYWxJc1ZhcmlhbnQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgc2V0QW1vdW50KGxvY2FsQW1vdW50KVxuICAgICAgICBzZXRJc1ZhcmlhbnQobG9jYWxJc1ZhcmlhbnQpXG4gICAgICB9LFxuICAgICAgW3NldEFtb3VudCwgc2V0SXNWYXJpYW50XSxcbiAgICApXG5cbiAgICBjb25zdCBpZCA9IHVzZUlkKClcblxuICAgIC8vIFdlIHJlbW92ZSBJdGVtIGZyb20gb2JqZWN0IGxpc3Qgd2hlbiBJZW0gY29tcG9uZW50IHVubW91bnQgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgIHVzZUVmZmVjdChcbiAgICAgICgpID0+ICgpID0+IHByb2R1Y3RzQ2FsbGJhY2s/LnJlbW92ZSh7IGlkIH0pLFxuICAgICAgW2lkLCBwcm9kdWN0c0NhbGxiYWNrXSxcbiAgICApXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFpc092ZXJsYXkpIHtcbiAgICAgICAgcHJvZHVjdHNDYWxsYmFjaz8uYWRkKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBpc1ZhcmlhbnQsXG4gICAgICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICBub0l0ZXJhdGlvbixcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBwcmljZSxcbiAgICAgIGRpc2NvdW50LFxuICAgICAgYW1vdW50LFxuICAgICAgaWQsXG4gICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgbWF4QW1vdW50LFxuICAgICAgbm9JdGVyYXRpb24sXG4gICAgICBpc1ZhcmlhbnQsXG4gICAgICBhbW91bnRGcmVlLFxuICAgICAgaXNPdmVybGF5LFxuICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgIF0pXG5cbiAgICBjb25zdCBjb21wdXRlZEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50LFxuICAgICAgICAgIGFtb3VudEZyZWUsXG4gICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgcHJpY2UsXG4gICAgICAgICAgdGltZUFtb3VudDogbm9JdGVyYXRpb24gPyAxIDogKGl0ZXJhdGlvbj8udmFsdWUgPz8gMSksXG4gICAgICAgICAgdGltZVVuaXQ6IG5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IChpdGVyYXRpb24/LnVuaXQgPz8gJ2hvdXJzJyksXG4gICAgICAgIH0pLFxuICAgICAgW3ByaWNlLCBhbW91bnQsIGFtb3VudEZyZWUsIGl0ZXJhdGlvbiwgbm9JdGVyYXRpb24sIGRpc2NvdW50XSxcbiAgICApXG5cbiAgICBjb25zdCBjb21wdXRlZE1heEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50OiBtYXhBbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIG1heEFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFpdGVyYXRpb24/LnVuaXQpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24/LnVuaXRdXG4gICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbj8udW5pdF1cbiAgICB9LCBbaXRlcmF0aW9uPy51bml0LCBsb25nRnJhY3Rpb25EaWdpdHNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxSb3dcbiAgICAgICAgaGlkZUZyb21PdmVybGF5PXtoaWRlRnJvbU92ZXJsYXl9XG4gICAgICAgIGlzRmlyc3RFbGVtZW50PXtpc0ZpcnN0RWxlbWVudH1cbiAgICAgICAgc2hvdWxkQmVIaWRkZW49e3Nob3VsZEJlSGlkZGVufVxuICAgICAgPlxuICAgICAgICA8Q2VsbFxuICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyICYmICFpc092ZXJsYXl9XG4gICAgICAgICAgdGFidWxhdGlvbj17dGFidWxhdGlvbn1cbiAgICAgICAgICB3aWR0aD17IWlzT3ZlcmxheSA/IE1BWF9DRUxMX1dJRFRIIDogJ2luaGVyaXQnfVxuICAgICAgICA+XG4gICAgICAgICAgPExlZnRTaWRlPlxuICAgICAgICAgICAgPFN0YWNrPlxuICAgICAgICAgICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtsYWJlbFRleHRQcm9taW5lbmNlID8/ICdkZWZhdWx0J31cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e2xhYmVsVGV4dFZhcmlhbnQgPz8gJ2JvZHknfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAge3Rvb2x0aXBJbmZvID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZERpdj5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRvb2x0aXAgdGV4dD17dG9vbHRpcEluZm99PlxuICAgICAgICAgICAgICAgICAgICAgIDxIZWxwQ2lyY2xlT3V0bGluZUljb24gc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVG9vbHRpcD5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgIHtzdWJMYWJlbCAmJiAhaXNPdmVybGF5ID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHQgYXM9XCJwXCIgaXRhbGljIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICB7c3ViTGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge2Rpc2NvdW50ID4gMCAmJiBkaXNjb3VudFRleHQgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkQmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgcHJvbWluZW5jZT1cInN0cm9uZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7ZGlzY291bnRUZXh0fVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRCYWRnZT5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAge25vdGljZSA/IChcbiAgICAgICAgICAgICAgICA8TWF4V2lkdGhUZXh0IGFzPVwicFwiIHByb21pbmVuY2U9XCJ3ZWFrXCIgdmFyaWFudD1cImNhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgIHtub3RpY2V9XG4gICAgICAgICAgICAgICAgPC9NYXhXaWR0aFRleHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgIDxTdHlsZWRSZXNvdXJjZU5hbWUgYW5pbWF0ZWQ9e2FuaW1hdGVkfSBpc092ZXJsYXk9e2lzT3ZlcmxheX0+XG4gICAgICAgICAgICAgIHtpc0RlZmluZWRcbiAgICAgICAgICAgICAgICA/IENoaWxkcmVuLm1hcChjaGlsZHJlbiwgY2hpbGQgPT5cbiAgICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgICAgPyBjbG9uZUVsZW1lbnQoY2hpbGQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGV4dE5vdERlZmluZWQgfHwgbG9jYWxlc1snZXN0aW1hdGUuY29zdC5ub3REZWZpbmVkJ119XG4gICAgICAgICAgICA8L1N0eWxlZFJlc291cmNlTmFtZT5cbiAgICAgICAgICA8L0xlZnRTaWRlPlxuICAgICAgICA8L0NlbGw+XG4gICAgICAgIHshaXNPdmVybGF5ID8gKFxuICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGxcbiAgICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyfVxuICAgICAgICAgICAgcHJpbWFyeT17aXNQcmltYXJ5QmFja2dyb3VuZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7IW5vUHJpY2UgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPFN0eWxlTm9QcmljZUl0ZW1cbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtcbiAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRJdGVtUHJpY2UgPT09IDAgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICA/ICd3ZWFrJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2RlZmF1bHQnXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ25ldXRyYWwnXG4gICAgICAgICAgICAgICAgICAgICAgOiAncHJpbWFyeSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHN0cmlrZVRocm91Z2g9e3N0cmlrZVRocm91Z2h9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PXtub0l0ZXJhdGlvblRleHQgPyAnaGVhZGluZ1NtYWxsJyA6ICdib2R5U3Ryb25nJ31cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cHJpY2VUZXh0fVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHRcbiAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXROdW1iZXIoY29tcHV0ZWRJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIHtub0l0ZXJhdGlvblRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVNtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgL3tub0l0ZXJhdGlvblRleHR9XG4gICAgICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHQgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPiAwXG4gICAgICAgICAgICAgICAgICAgID8gYCAtICR7Zm9ybWF0TnVtYmVyKGNvbXB1dGVkTWF4SXRlbVByaWNlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1N0eWxlTm9QcmljZUl0ZW0+XG4gICAgICAgICAgICAgICAgeyhhbW91bnQgLSBhbW91bnRGcmVlICE9PSAxICYmIGNvbXB1dGVkSXRlbVByaWNlID4gMCkgfHxcbiAgICAgICAgICAgICAgICAobWF4QW1vdW50ID4gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDApID8gKFxuICAgICAgICAgICAgICAgICAgPFRleHRBbGlnblJpZ2h0IGFzPVwicFwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtmb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdDogJ2hvdXJzJyxcbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGxvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcuaG91cnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge1RJTUVfUkVMQVRFRF9VTklULmluY2x1ZGVzKHVuaXQgYXMgVW5pdHMpXG4gICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy4ke3VuaXQgYXMgVW5pdHN9LmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgICAgOiBgLyR7dW5pdH1gfVxuICAgICAgICAgICAgICAgICAgICB7IW5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgPyBgLyR7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VzdGltYXRlLmNvc3QudW5pdHMuaG91cnMubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIDwvVGV4dEFsaWduUmlnaHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9Sb3c+XG4gICAgKVxuICB9LFxuKVxuIl19 */",
70
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
71
- });
72
- const StyledTooltip = /* @__PURE__ */ _styled(Tooltip, process.env.NODE_ENV === "production" ? {
73
- target: "e1kzy2rr2"
74
- } : {
75
- target: "e1kzy2rr2",
76
- label: "StyledTooltip"
77
- })(process.env.NODE_ENV === "production" ? {
78
- name: "uaxjgr",
79
- styles: "vertical-align:text-top"
80
- } : {
81
- name: "uaxjgr",
82
- styles: "vertical-align:text-top/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0ZxQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Db21wb25lbnRzL0l0ZW0udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBIZWxwQ2lyY2xlT3V0bGluZUljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgeyBCYWRnZSwgU3RhY2ssIFRleHQsIFRvb2x0aXAsIHpvb21JbiB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUlkLFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBPdmVybGF5Um93LFxuICBwcmljZUNlbGwsXG4gIENlbGwgYXMgU3R5bGVkQ2VsbCxcbiAgU3R5bGVkRGl2LFxuICBTdHlsZWRMZWZ0U2lkZSxcbiAgU3R5bGVkVHIsXG59IGZyb20gJy4uL2NvbXBvbmVudFN0eWxlJ1xuaW1wb3J0IHtcbiAgTUFYX0NFTExfV0lEVEgsXG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyxcbiAgbXVsdGlwbGllcixcbn0gZnJvbSAnLi4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4uL2hlbHBlcidcbmltcG9ydCB7IHVzZU92ZXJsYXkgfSBmcm9tICcuLi9PdmVybGF5Q29udGV4dCdcbmltcG9ydCB0eXBlIHtcbiAgQmFyZUVzdGltYXRlUHJvZHVjdCxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuLi90eXBlcydcblxuY29uc3QgVElNRV9SRUxBVEVEX1VOSVQ6IFVuaXRzW10gPSBbXG4gICdzZWNvbmRzJyxcbiAgJ21pbnV0ZXMnLFxuICAnaG91cnMnLFxuICAnZGF5cycsXG4gICdtb250aHMnLFxuXVxuXG5jb25zdCBTdHlsZWRSZXNvdXJjZU5hbWUgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnaXNPdmVybGF5JywgJ2FuaW1hdGVkJ10uaW5jbHVkZXMocHJvcCksXG59KTx7XG4gIGlzT3ZlcmxheTogYm9vbGVhblxuICBhbmltYXRlZDogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246ICR7KHsgaXNPdmVybGF5IH0pID0+IChpc092ZXJsYXkgPyAnaW5pdGlhbCcgOiAncmlnaHQnKX07XG5cbiAgJHsoeyBpc092ZXJsYXksIGFuaW1hdGVkIH0pID0+XG4gICAgaXNPdmVybGF5XG4gICAgICA/IGNzc2BcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbmltYXRpb246ICR7YW5pbWF0ZWQgPyBjc3NgODAwbXMgJHt6b29tSW59YCA6ICcnfTtcbiAgICAgICAgYFxuICAgICAgOiBudWxsfVxuYFxuXG5jb25zdCBTdHlsZWRCYWRnZSA9IHN0eWxlZChCYWRnZSlgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5gXG5cbmNvbnN0IFN0eWxlZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuYFxuXG5jb25zdCBNYXhXaWR0aFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1heC13aWR0aDogNzUlO1xuYFxuXG5jb25zdCBUZXh0QWxpZ25SaWdodCA9IHN0eWxlZChUZXh0KWBcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5gXG5cbmNvbnN0IFN0eWxlZFRvb2x0aXAgPSBzdHlsZWQoVG9vbHRpcClgXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKFN0eWxlZENlbGwpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG5gXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXRlbUNhbGxiYWNrOiAoYW1vdW50OiBudW1iZXIsIGlzVmFyaWFudDogYm9vbGVhbikgPT4gdm9pZFxuICBhbW91bnQ6IG51bWJlclxuICBtYXhBbW91bnQ6IG51bWJlclxuICB1bml0OiBzdHJpbmdcbn1cblxudHlwZSBJdGVtUHJvcHMgPSB7XG4gIGFtb3VudD86IG51bWJlclxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXJlIGZyZWUuIEl0IHdpbGwgYmUgZGVkdWN0ZWQgdG8gcHJpY2Ugb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBhbW91bnRGcmVlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgYW5pbWF0ZWQ/OiBib29sZWFuXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlXG4gIGRpc2NvdW50PzogbnVtYmVyXG4gIGRpc2NvdW50VGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheVxuICAgKi9cbiAgaGlkZUZyb21PdmVybGF5PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0RlZmluZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRmlyc3RFbGVtZW50PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBpc1ByaW1hcnlCYWNrZ3JvdW5kPzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgLyoqXG4gICAqIFN0cmluZyB0aGF0IGlzIGRpc3BsYXllZCBvbiBsZWZ0IHBhcnQgb2YgdGhlIGl0ZW0sIGl0IGRlZmluZXMgdGhlIGl0ZW1cbiAgICovXG4gIGxhYmVsPzogUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgdmFyaWFudFxuICAgKi9cbiAgbGFiZWxUZXh0VmFyaWFudD86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsndmFyaWFudCddXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgKi9cbiAgbGFiZWxUZXh0UHJvbWluZW5jZT86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsncHJvbWluZW5jZSddXG4gIC8qKlxuICAgKiBJZiB5b3VyIHByaWNlIGhhcyBhIGxvdCBvZiBudW1iZXIgYWZ0ZXIgZGVjaW1hbCBwb2ludCAoZXg6IDAuMDAwMDA3NikgLSB1cCA4IGZyYWN0aW9uIGRpZ2l0c1xuICAgKi9cbiAgbG9uZ0ZyYWN0aW9uRGlnaXRzPzogYm9vbGVhblxuICAvKipcbiAgICogQ3JlYXRlIGEgcmFuZ2UgcHJpY2Ugd2l0aCBbYW1vdW50IC0gbWF4QW1vdW50XSB2YWx1ZXMgYW5kIHByaWNlc1xuICAgKi9cbiAgbWF4QW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBQcmljZSBwZXIgbW9udGhcbiAgICovXG4gIG1vbnRobHlQcmljZT86IG51bWJlclxuICAvKipcbiAgICogUmVtb3ZlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICovXG4gIG5vQm9yZGVyPzogYm9vbGVhblxuICAvKipcbiAgICogSWYgdGhlIHByaWNlIG9mIHRoZSBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIGVuYWJsZSB0aGlzIHByb3AuIGV4OiA1a2cgb2YgY2hvY29sYXRlIGlzIHNhbWUgcHJpY2Ugb3ZlciAxIG1vbnRoIG9yIDEgaG91ci5cbiAgICovXG4gIG5vSXRlcmF0aW9uPzogYm9vbGVhblxuICBub0l0ZXJhdGlvblRleHQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgcHJpY2Ugb24gdGhlIHJpZ2h0IHNlY3Rpb24gb2YgdGhlIHRhYmxlXG4gICAqL1xuICBub1ByaWNlPzogYm9vbGVhblxuICAvKipcbiAgICogTm90aWNlIHRvIGRpc3BsYXkgYmVsb3cgdGhlIGxhYmVsXG4gICAqL1xuICBub3RpY2U/OiBzdHJpbmdcbiAgb25BbW91bnRDaGFuZ2U/OiAoYW1vdW50OiBudW1iZXIpID0+IHZvaWRcbiAgLyoqXG4gICAqIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICovXG4gIHByaWNlPzogbnVtYmVyXG4gIHByaWNlVGV4dD86IFJlYWN0Tm9kZVxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICAvKipcbiAgICogSGlkZSBpdGVtIGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICovXG4gIHNob3VsZEJlSGlkZGVuPzogYm9vbGVhblxuICAvKipcbiAgICogRGlzcGxheSBhIGNvbXBsZW1lbnRhcnkgdGV4dCBvbiB0aGUgcmlnaHQgb2YgdGhlIGxhYmVsXG4gICAqL1xuICBzdWJMYWJlbD86IHN0cmluZ1xuICAvKipcbiAgICogSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtIGxpa2VcbiAgICovXG4gIHRhYnVsYXRpb24/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRleHQgdG8gZGlzcGxheSBpbiBjYXNlIG9mIG5vdCBkZWZpbmVkIHZhbHVlXG4gICAqL1xuICB0ZXh0Tm90RGVmaW5lZD86IHN0cmluZ1xuICAvKipcbiAgICogRGlzcGxheSBuZWFyIGxhYmVsLCBhbiBpY29uIHdpdGggYSB0b29sdGlwIHRoYXQgY29udGFpbnMgeW91ciB0ZXh0XG4gICAqL1xuICB0b29sdGlwSW5mbz86IHN0cmluZ1xuICAvKipcbiAgICogVW5pdCBvZiB5b3VyIGl0ZW0sIGV4YW1wbGVzOiBHQiwgTUIsIE5vZGUsIFF1ZXJpZXMsIGV0Yy5cbiAgICovXG4gIHVuaXQ/OlxuICAgIHwgJ21iJ1xuICAgIHwgJ2diJ1xuICAgIHwgJ3RiJ1xuICAgIHwgJ3NlY29uZHMnXG4gICAgfCAnbWludXRlcydcbiAgICB8ICdob3VycydcbiAgICB8ICdkYXlzJ1xuICAgIHwgJ21vbnRocydcbiAgICB8ICd5ZWFycydcbiAgICAvLyBBbGxvdyBhIHN0cmluZyBmb3IgdW5pdCBidXQga2VlcCBhdXRvY29tcGxldGUgZm9yIHRoZSBhYm92ZSB2YWx1ZXNcbiAgICB8IChzdHJpbmcgJiBOb25OdWxsYWJsZTx1bmtub3duPilcbiAgLypcbiAgICogVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gICAqL1xuICBzdHJpa2VUaHJvdWdoPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZU5vUHJpY2VJdGVtID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuZXhwb3J0IGNvbnN0IEl0ZW0gPSBtZW1vKFxuICAoe1xuICAgIGRpc2NvdW50ID0gMCxcbiAgICBwcmljZVRleHQsXG4gICAgZGlzY291bnRUZXh0LFxuICAgIGxhYmVsLFxuICAgIHRvb2x0aXBJbmZvLCAvLyBTaG93cyBhbiBpY29uIHdpdGggdG9vbHRpcCB0aGF0IGNvbnRhaW5zIHRoaXMgdGV4dFxuICAgIHN1YkxhYmVsID0gJycsIC8vIFVzdWFsbHkgdXNlZCBmb3Igc2hvd2luZyBhbW91bnQgdGhhdCBpcyBmcmVlXG4gICAgcHJpY2U6IGJhc2VQcmljZSA9IDAsIC8vIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICBtb250aGx5UHJpY2UgPSAwLCAvLyBQcmljZSBwZXIgbW9udGhcbiAgICB1bml0OiBiYXNlVW5pdCwgLy8gQ2FuIGJlIEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgIGFtb3VudDogY3VycmVudEFtb3VudCA9IDEsIC8vIEN1cnJlbnQgbnVtYmVyIG9mIGl0ZW1zXG4gICAgb25BbW91bnRDaGFuZ2UsXG4gICAgYW1vdW50RnJlZSA9IDAsIC8vIEFtb3VudCB0aGF0IGlzIGZyZWUgLSBvZmZlcmVkIGJ5IGNvbXBhbnlcbiAgICBtYXhBbW91bnQgPSAwLCAvLyBNYXggYW1vdW50IC0gdXNlZCBmb3Iga3ViZXJuZXRlcyBmb3IgZXhhbXBsZVxuICAgIGxvbmdGcmFjdGlvbkRpZ2l0cyA9IGZhbHNlLCAvLyBJbiBjYXNlIHByaWNlIGlzIHJlYWxseSBsb25nIDAuMDAwMDA3NiAtIHVwIDcgZnJhY3Rpb24gZGlnaXRzXG4gICAgbm9JdGVyYXRpb24gPSBmYWxzZSwgLy8gaWYgaXRlbSBpcyBub3QgYmFzZWQgb24gdGltZSAoZXg6IGRvd25sb2FkLCB1cGxvYWQsIHRyYW5zZmVyKVxuICAgIG5vSXRlcmF0aW9uVGV4dCxcbiAgICBub0JvcmRlciwgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYm90dG9tIG9mIHRoZSBpdGVtXG4gICAgbm9QcmljZSwgLy8gcmVtb3ZlIHRoZSBwcmljZSBvbiByaWdodCBzaWRlIG9mIHRoZSB0YWJsZVxuICAgIGlzRGVmaW5lZCA9IHRydWUsXG4gICAgY2hpbGRyZW4gPSBudWxsLFxuICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNMYXN0RWxlbWVudCA9IGZhbHNlLFxuICAgIGlzUHJpbWFyeUJhY2tncm91bmQgPSBmYWxzZSxcbiAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgIGl0ZXJhdGlvbjogcmVjZWl2ZWRJdGVyYXRpb24sIC8vIE9iamVjdCBmcm9tIHBhcmVudCB0aGF0IGNvbnRhaW5zIHRpbWUgcGVyaW9kIChob3VycywgZGF5cywgbW9udGhzKVxuICAgIHNob3VsZEJlSGlkZGVuID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsXG4gICAgaGlkZUZyb21PdmVybGF5ID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaW4gYW55IGNhc2VcbiAgICB0ZXh0Tm90RGVmaW5lZCwgLy8gVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICBhbmltYXRlZCA9IGZhbHNlLCAvLyBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgIHRhYnVsYXRpb24sIC8vIEluY3JlYXNlIGxlZnQgcGFkZGluZyBvZiB0aGUgaXRlbVxuICAgIGxhYmVsVGV4dFZhcmlhbnQsIC8vIFRvIGNoYW5nZSBsZWZ0IGNlbGwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAgbGFiZWxUZXh0UHJvbWluZW5jZSwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHByb21pbmVuY2VcbiAgICBub3RpY2UsIC8vIFRvIGRpc3BsYXkgYSBncmF5IHRleHQgYmVsb3cgdGhlIGxhYmVsXG4gICAgc3RyaWtlVGhyb3VnaCwgLy8gVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gIH06IEl0ZW1Qcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgbG9jYWxlcywgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuXG4gICAgbGV0IGl0ZXJhdGlvbjogSXRlcmF0aW9uIHwgdW5kZWZpbmVkXG5cbiAgICBpZiAobm9JdGVyYXRpb24pIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHtcbiAgICAgICAgLi4uKHJlY2VpdmVkSXRlcmF0aW9uID8/IHsgdmFsdWU6IDAgfSksXG4gICAgICAgIHVuaXQ6ICdob3VycycsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHJlY2VpdmVkSXRlcmF0aW9uXG4gICAgfVxuXG4gICAgY29uc3QgcHJpY2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChtb250aGx5UHJpY2UgJiYgYmFzZVByaWNlID09PSAwKSB7XG4gICAgICAgIHJldHVybiBtb250aGx5UHJpY2UgLyBtdWx0aXBsaWVyLm1vbnRoc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVByaWNlXG4gICAgfSwgW2Jhc2VQcmljZSwgbW9udGhseVByaWNlXSlcblxuICAgIGNvbnN0IHVuaXQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghYmFzZVVuaXQpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QudW5pdHMuZ2IubGFiZWwnXVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVVuaXRcbiAgICB9LCBbYmFzZVVuaXQsIGxvY2FsZXNdKVxuXG4gICAgY29uc3QgeyBpc092ZXJsYXkgfSA9IHVzZU92ZXJsYXkoKVxuICAgIGNvbnN0IFJvdyA9IGlzT3ZlcmxheSA/IE92ZXJsYXlSb3cgOiBTdHlsZWRUclxuICAgIGNvbnN0IENlbGwgPSBpc092ZXJsYXkgPyBTdHlsZWRDZWxsLndpdGhDb21wb25lbnQoJ2RpdicpIDogU3R5bGVkQ2VsbFxuICAgIGNvbnN0IExlZnRTaWRlID0gaXNPdmVybGF5ID8gJ2RpdicgOiBTdHlsZWRMZWZ0U2lkZVxuXG4gICAgY29uc3QgW2Ftb3VudCwgc2V0QW1vdW50XSA9IHVzZVN0YXRlKGN1cnJlbnRBbW91bnQpXG4gICAgY29uc3QgW2lzVmFyaWFudCwgc2V0SXNWYXJpYW50XSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHNldEFtb3VudChjdXJyZW50QW1vdW50KSwgW3NldEFtb3VudCwgY3VycmVudEFtb3VudF0pXG4gICAgdXNlRWZmZWN0KCgpID0+IG9uQW1vdW50Q2hhbmdlPy4oYW1vdW50KSwgW29uQW1vdW50Q2hhbmdlLCBhbW91bnRdKVxuXG4gICAgY29uc3QgaXRlbUNhbGxiYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAobG9jYWxBbW91bnQ6IG51bWJlciwgbG9jYWxJc1ZhcmlhbnQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgc2V0QW1vdW50KGxvY2FsQW1vdW50KVxuICAgICAgICBzZXRJc1ZhcmlhbnQobG9jYWxJc1ZhcmlhbnQpXG4gICAgICB9LFxuICAgICAgW3NldEFtb3VudCwgc2V0SXNWYXJpYW50XSxcbiAgICApXG5cbiAgICBjb25zdCBpZCA9IHVzZUlkKClcblxuICAgIC8vIFdlIHJlbW92ZSBJdGVtIGZyb20gb2JqZWN0IGxpc3Qgd2hlbiBJZW0gY29tcG9uZW50IHVubW91bnQgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgIHVzZUVmZmVjdChcbiAgICAgICgpID0+ICgpID0+IHByb2R1Y3RzQ2FsbGJhY2s/LnJlbW92ZSh7IGlkIH0pLFxuICAgICAgW2lkLCBwcm9kdWN0c0NhbGxiYWNrXSxcbiAgICApXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFpc092ZXJsYXkpIHtcbiAgICAgICAgcHJvZHVjdHNDYWxsYmFjaz8uYWRkKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBpc1ZhcmlhbnQsXG4gICAgICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICBub0l0ZXJhdGlvbixcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBwcmljZSxcbiAgICAgIGRpc2NvdW50LFxuICAgICAgYW1vdW50LFxuICAgICAgaWQsXG4gICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgbWF4QW1vdW50LFxuICAgICAgbm9JdGVyYXRpb24sXG4gICAgICBpc1ZhcmlhbnQsXG4gICAgICBhbW91bnRGcmVlLFxuICAgICAgaXNPdmVybGF5LFxuICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgIF0pXG5cbiAgICBjb25zdCBjb21wdXRlZEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50LFxuICAgICAgICAgIGFtb3VudEZyZWUsXG4gICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgcHJpY2UsXG4gICAgICAgICAgdGltZUFtb3VudDogbm9JdGVyYXRpb24gPyAxIDogKGl0ZXJhdGlvbj8udmFsdWUgPz8gMSksXG4gICAgICAgICAgdGltZVVuaXQ6IG5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IChpdGVyYXRpb24/LnVuaXQgPz8gJ2hvdXJzJyksXG4gICAgICAgIH0pLFxuICAgICAgW3ByaWNlLCBhbW91bnQsIGFtb3VudEZyZWUsIGl0ZXJhdGlvbiwgbm9JdGVyYXRpb24sIGRpc2NvdW50XSxcbiAgICApXG5cbiAgICBjb25zdCBjb21wdXRlZE1heEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50OiBtYXhBbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIG1heEFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFpdGVyYXRpb24/LnVuaXQpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24/LnVuaXRdXG4gICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbj8udW5pdF1cbiAgICB9LCBbaXRlcmF0aW9uPy51bml0LCBsb25nRnJhY3Rpb25EaWdpdHNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxSb3dcbiAgICAgICAgaGlkZUZyb21PdmVybGF5PXtoaWRlRnJvbU92ZXJsYXl9XG4gICAgICAgIGlzRmlyc3RFbGVtZW50PXtpc0ZpcnN0RWxlbWVudH1cbiAgICAgICAgc2hvdWxkQmVIaWRkZW49e3Nob3VsZEJlSGlkZGVufVxuICAgICAgPlxuICAgICAgICA8Q2VsbFxuICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyICYmICFpc092ZXJsYXl9XG4gICAgICAgICAgdGFidWxhdGlvbj17dGFidWxhdGlvbn1cbiAgICAgICAgICB3aWR0aD17IWlzT3ZlcmxheSA/IE1BWF9DRUxMX1dJRFRIIDogJ2luaGVyaXQnfVxuICAgICAgICA+XG4gICAgICAgICAgPExlZnRTaWRlPlxuICAgICAgICAgICAgPFN0YWNrPlxuICAgICAgICAgICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtsYWJlbFRleHRQcm9taW5lbmNlID8/ICdkZWZhdWx0J31cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e2xhYmVsVGV4dFZhcmlhbnQgPz8gJ2JvZHknfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAge3Rvb2x0aXBJbmZvID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZERpdj5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRvb2x0aXAgdGV4dD17dG9vbHRpcEluZm99PlxuICAgICAgICAgICAgICAgICAgICAgIDxIZWxwQ2lyY2xlT3V0bGluZUljb24gc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVG9vbHRpcD5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgIHtzdWJMYWJlbCAmJiAhaXNPdmVybGF5ID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHQgYXM9XCJwXCIgaXRhbGljIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICB7c3ViTGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge2Rpc2NvdW50ID4gMCAmJiBkaXNjb3VudFRleHQgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkQmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgcHJvbWluZW5jZT1cInN0cm9uZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7ZGlzY291bnRUZXh0fVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRCYWRnZT5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAge25vdGljZSA/IChcbiAgICAgICAgICAgICAgICA8TWF4V2lkdGhUZXh0IGFzPVwicFwiIHByb21pbmVuY2U9XCJ3ZWFrXCIgdmFyaWFudD1cImNhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgIHtub3RpY2V9XG4gICAgICAgICAgICAgICAgPC9NYXhXaWR0aFRleHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgIDxTdHlsZWRSZXNvdXJjZU5hbWUgYW5pbWF0ZWQ9e2FuaW1hdGVkfSBpc092ZXJsYXk9e2lzT3ZlcmxheX0+XG4gICAgICAgICAgICAgIHtpc0RlZmluZWRcbiAgICAgICAgICAgICAgICA/IENoaWxkcmVuLm1hcChjaGlsZHJlbiwgY2hpbGQgPT5cbiAgICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgICAgPyBjbG9uZUVsZW1lbnQoY2hpbGQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGV4dE5vdERlZmluZWQgfHwgbG9jYWxlc1snZXN0aW1hdGUuY29zdC5ub3REZWZpbmVkJ119XG4gICAgICAgICAgICA8L1N0eWxlZFJlc291cmNlTmFtZT5cbiAgICAgICAgICA8L0xlZnRTaWRlPlxuICAgICAgICA8L0NlbGw+XG4gICAgICAgIHshaXNPdmVybGF5ID8gKFxuICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGxcbiAgICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyfVxuICAgICAgICAgICAgcHJpbWFyeT17aXNQcmltYXJ5QmFja2dyb3VuZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7IW5vUHJpY2UgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPFN0eWxlTm9QcmljZUl0ZW1cbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtcbiAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRJdGVtUHJpY2UgPT09IDAgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICA/ICd3ZWFrJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2RlZmF1bHQnXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ25ldXRyYWwnXG4gICAgICAgICAgICAgICAgICAgICAgOiAncHJpbWFyeSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHN0cmlrZVRocm91Z2g9e3N0cmlrZVRocm91Z2h9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PXtub0l0ZXJhdGlvblRleHQgPyAnaGVhZGluZ1NtYWxsJyA6ICdib2R5U3Ryb25nJ31cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cHJpY2VUZXh0fVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHRcbiAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXROdW1iZXIoY29tcHV0ZWRJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIHtub0l0ZXJhdGlvblRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVNtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgL3tub0l0ZXJhdGlvblRleHR9XG4gICAgICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHQgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPiAwXG4gICAgICAgICAgICAgICAgICAgID8gYCAtICR7Zm9ybWF0TnVtYmVyKGNvbXB1dGVkTWF4SXRlbVByaWNlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1N0eWxlTm9QcmljZUl0ZW0+XG4gICAgICAgICAgICAgICAgeyhhbW91bnQgLSBhbW91bnRGcmVlICE9PSAxICYmIGNvbXB1dGVkSXRlbVByaWNlID4gMCkgfHxcbiAgICAgICAgICAgICAgICAobWF4QW1vdW50ID4gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDApID8gKFxuICAgICAgICAgICAgICAgICAgPFRleHRBbGlnblJpZ2h0IGFzPVwicFwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtmb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdDogJ2hvdXJzJyxcbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGxvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcuaG91cnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge1RJTUVfUkVMQVRFRF9VTklULmluY2x1ZGVzKHVuaXQgYXMgVW5pdHMpXG4gICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy4ke3VuaXQgYXMgVW5pdHN9LmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgICAgOiBgLyR7dW5pdH1gfVxuICAgICAgICAgICAgICAgICAgICB7IW5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgPyBgLyR7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VzdGltYXRlLmNvc3QudW5pdHMuaG91cnMubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIDwvVGV4dEFsaWduUmlnaHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9Sb3c+XG4gICAgKVxuICB9LFxuKVxuIl19 */",
83
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
84
- });
85
- const StyledPriceCell = /* @__PURE__ */ _styled(Cell, process.env.NODE_ENV === "production" ? {
86
- target: "e1kzy2rr1"
87
- } : {
88
- target: "e1kzy2rr1",
89
- label: "StyledPriceCell"
90
- })(({
91
- theme
92
- }) => priceCell(theme), ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEYwQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Db21wb25lbnRzL0l0ZW0udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBIZWxwQ2lyY2xlT3V0bGluZUljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgeyBCYWRnZSwgU3RhY2ssIFRleHQsIFRvb2x0aXAsIHpvb21JbiB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUlkLFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBPdmVybGF5Um93LFxuICBwcmljZUNlbGwsXG4gIENlbGwgYXMgU3R5bGVkQ2VsbCxcbiAgU3R5bGVkRGl2LFxuICBTdHlsZWRMZWZ0U2lkZSxcbiAgU3R5bGVkVHIsXG59IGZyb20gJy4uL2NvbXBvbmVudFN0eWxlJ1xuaW1wb3J0IHtcbiAgTUFYX0NFTExfV0lEVEgsXG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyxcbiAgbXVsdGlwbGllcixcbn0gZnJvbSAnLi4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4uL2hlbHBlcidcbmltcG9ydCB7IHVzZU92ZXJsYXkgfSBmcm9tICcuLi9PdmVybGF5Q29udGV4dCdcbmltcG9ydCB0eXBlIHtcbiAgQmFyZUVzdGltYXRlUHJvZHVjdCxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuLi90eXBlcydcblxuY29uc3QgVElNRV9SRUxBVEVEX1VOSVQ6IFVuaXRzW10gPSBbXG4gICdzZWNvbmRzJyxcbiAgJ21pbnV0ZXMnLFxuICAnaG91cnMnLFxuICAnZGF5cycsXG4gICdtb250aHMnLFxuXVxuXG5jb25zdCBTdHlsZWRSZXNvdXJjZU5hbWUgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnaXNPdmVybGF5JywgJ2FuaW1hdGVkJ10uaW5jbHVkZXMocHJvcCksXG59KTx7XG4gIGlzT3ZlcmxheTogYm9vbGVhblxuICBhbmltYXRlZDogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246ICR7KHsgaXNPdmVybGF5IH0pID0+IChpc092ZXJsYXkgPyAnaW5pdGlhbCcgOiAncmlnaHQnKX07XG5cbiAgJHsoeyBpc092ZXJsYXksIGFuaW1hdGVkIH0pID0+XG4gICAgaXNPdmVybGF5XG4gICAgICA/IGNzc2BcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbmltYXRpb246ICR7YW5pbWF0ZWQgPyBjc3NgODAwbXMgJHt6b29tSW59YCA6ICcnfTtcbiAgICAgICAgYFxuICAgICAgOiBudWxsfVxuYFxuXG5jb25zdCBTdHlsZWRCYWRnZSA9IHN0eWxlZChCYWRnZSlgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5gXG5cbmNvbnN0IFN0eWxlZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuYFxuXG5jb25zdCBNYXhXaWR0aFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1heC13aWR0aDogNzUlO1xuYFxuXG5jb25zdCBUZXh0QWxpZ25SaWdodCA9IHN0eWxlZChUZXh0KWBcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5gXG5cbmNvbnN0IFN0eWxlZFRvb2x0aXAgPSBzdHlsZWQoVG9vbHRpcClgXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKFN0eWxlZENlbGwpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG5gXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXRlbUNhbGxiYWNrOiAoYW1vdW50OiBudW1iZXIsIGlzVmFyaWFudDogYm9vbGVhbikgPT4gdm9pZFxuICBhbW91bnQ6IG51bWJlclxuICBtYXhBbW91bnQ6IG51bWJlclxuICB1bml0OiBzdHJpbmdcbn1cblxudHlwZSBJdGVtUHJvcHMgPSB7XG4gIGFtb3VudD86IG51bWJlclxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXJlIGZyZWUuIEl0IHdpbGwgYmUgZGVkdWN0ZWQgdG8gcHJpY2Ugb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBhbW91bnRGcmVlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgYW5pbWF0ZWQ/OiBib29sZWFuXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlXG4gIGRpc2NvdW50PzogbnVtYmVyXG4gIGRpc2NvdW50VGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheVxuICAgKi9cbiAgaGlkZUZyb21PdmVybGF5PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0RlZmluZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRmlyc3RFbGVtZW50PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBpc1ByaW1hcnlCYWNrZ3JvdW5kPzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgLyoqXG4gICAqIFN0cmluZyB0aGF0IGlzIGRpc3BsYXllZCBvbiBsZWZ0IHBhcnQgb2YgdGhlIGl0ZW0sIGl0IGRlZmluZXMgdGhlIGl0ZW1cbiAgICovXG4gIGxhYmVsPzogUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgdmFyaWFudFxuICAgKi9cbiAgbGFiZWxUZXh0VmFyaWFudD86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsndmFyaWFudCddXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgKi9cbiAgbGFiZWxUZXh0UHJvbWluZW5jZT86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsncHJvbWluZW5jZSddXG4gIC8qKlxuICAgKiBJZiB5b3VyIHByaWNlIGhhcyBhIGxvdCBvZiBudW1iZXIgYWZ0ZXIgZGVjaW1hbCBwb2ludCAoZXg6IDAuMDAwMDA3NikgLSB1cCA4IGZyYWN0aW9uIGRpZ2l0c1xuICAgKi9cbiAgbG9uZ0ZyYWN0aW9uRGlnaXRzPzogYm9vbGVhblxuICAvKipcbiAgICogQ3JlYXRlIGEgcmFuZ2UgcHJpY2Ugd2l0aCBbYW1vdW50IC0gbWF4QW1vdW50XSB2YWx1ZXMgYW5kIHByaWNlc1xuICAgKi9cbiAgbWF4QW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBQcmljZSBwZXIgbW9udGhcbiAgICovXG4gIG1vbnRobHlQcmljZT86IG51bWJlclxuICAvKipcbiAgICogUmVtb3ZlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICovXG4gIG5vQm9yZGVyPzogYm9vbGVhblxuICAvKipcbiAgICogSWYgdGhlIHByaWNlIG9mIHRoZSBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIGVuYWJsZSB0aGlzIHByb3AuIGV4OiA1a2cgb2YgY2hvY29sYXRlIGlzIHNhbWUgcHJpY2Ugb3ZlciAxIG1vbnRoIG9yIDEgaG91ci5cbiAgICovXG4gIG5vSXRlcmF0aW9uPzogYm9vbGVhblxuICBub0l0ZXJhdGlvblRleHQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgcHJpY2Ugb24gdGhlIHJpZ2h0IHNlY3Rpb24gb2YgdGhlIHRhYmxlXG4gICAqL1xuICBub1ByaWNlPzogYm9vbGVhblxuICAvKipcbiAgICogTm90aWNlIHRvIGRpc3BsYXkgYmVsb3cgdGhlIGxhYmVsXG4gICAqL1xuICBub3RpY2U/OiBzdHJpbmdcbiAgb25BbW91bnRDaGFuZ2U/OiAoYW1vdW50OiBudW1iZXIpID0+IHZvaWRcbiAgLyoqXG4gICAqIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICovXG4gIHByaWNlPzogbnVtYmVyXG4gIHByaWNlVGV4dD86IFJlYWN0Tm9kZVxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICAvKipcbiAgICogSGlkZSBpdGVtIGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICovXG4gIHNob3VsZEJlSGlkZGVuPzogYm9vbGVhblxuICAvKipcbiAgICogRGlzcGxheSBhIGNvbXBsZW1lbnRhcnkgdGV4dCBvbiB0aGUgcmlnaHQgb2YgdGhlIGxhYmVsXG4gICAqL1xuICBzdWJMYWJlbD86IHN0cmluZ1xuICAvKipcbiAgICogSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtIGxpa2VcbiAgICovXG4gIHRhYnVsYXRpb24/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRleHQgdG8gZGlzcGxheSBpbiBjYXNlIG9mIG5vdCBkZWZpbmVkIHZhbHVlXG4gICAqL1xuICB0ZXh0Tm90RGVmaW5lZD86IHN0cmluZ1xuICAvKipcbiAgICogRGlzcGxheSBuZWFyIGxhYmVsLCBhbiBpY29uIHdpdGggYSB0b29sdGlwIHRoYXQgY29udGFpbnMgeW91ciB0ZXh0XG4gICAqL1xuICB0b29sdGlwSW5mbz86IHN0cmluZ1xuICAvKipcbiAgICogVW5pdCBvZiB5b3VyIGl0ZW0sIGV4YW1wbGVzOiBHQiwgTUIsIE5vZGUsIFF1ZXJpZXMsIGV0Yy5cbiAgICovXG4gIHVuaXQ/OlxuICAgIHwgJ21iJ1xuICAgIHwgJ2diJ1xuICAgIHwgJ3RiJ1xuICAgIHwgJ3NlY29uZHMnXG4gICAgfCAnbWludXRlcydcbiAgICB8ICdob3VycydcbiAgICB8ICdkYXlzJ1xuICAgIHwgJ21vbnRocydcbiAgICB8ICd5ZWFycydcbiAgICAvLyBBbGxvdyBhIHN0cmluZyBmb3IgdW5pdCBidXQga2VlcCBhdXRvY29tcGxldGUgZm9yIHRoZSBhYm92ZSB2YWx1ZXNcbiAgICB8IChzdHJpbmcgJiBOb25OdWxsYWJsZTx1bmtub3duPilcbiAgLypcbiAgICogVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gICAqL1xuICBzdHJpa2VUaHJvdWdoPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZU5vUHJpY2VJdGVtID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuZXhwb3J0IGNvbnN0IEl0ZW0gPSBtZW1vKFxuICAoe1xuICAgIGRpc2NvdW50ID0gMCxcbiAgICBwcmljZVRleHQsXG4gICAgZGlzY291bnRUZXh0LFxuICAgIGxhYmVsLFxuICAgIHRvb2x0aXBJbmZvLCAvLyBTaG93cyBhbiBpY29uIHdpdGggdG9vbHRpcCB0aGF0IGNvbnRhaW5zIHRoaXMgdGV4dFxuICAgIHN1YkxhYmVsID0gJycsIC8vIFVzdWFsbHkgdXNlZCBmb3Igc2hvd2luZyBhbW91bnQgdGhhdCBpcyBmcmVlXG4gICAgcHJpY2U6IGJhc2VQcmljZSA9IDAsIC8vIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICBtb250aGx5UHJpY2UgPSAwLCAvLyBQcmljZSBwZXIgbW9udGhcbiAgICB1bml0OiBiYXNlVW5pdCwgLy8gQ2FuIGJlIEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgIGFtb3VudDogY3VycmVudEFtb3VudCA9IDEsIC8vIEN1cnJlbnQgbnVtYmVyIG9mIGl0ZW1zXG4gICAgb25BbW91bnRDaGFuZ2UsXG4gICAgYW1vdW50RnJlZSA9IDAsIC8vIEFtb3VudCB0aGF0IGlzIGZyZWUgLSBvZmZlcmVkIGJ5IGNvbXBhbnlcbiAgICBtYXhBbW91bnQgPSAwLCAvLyBNYXggYW1vdW50IC0gdXNlZCBmb3Iga3ViZXJuZXRlcyBmb3IgZXhhbXBsZVxuICAgIGxvbmdGcmFjdGlvbkRpZ2l0cyA9IGZhbHNlLCAvLyBJbiBjYXNlIHByaWNlIGlzIHJlYWxseSBsb25nIDAuMDAwMDA3NiAtIHVwIDcgZnJhY3Rpb24gZGlnaXRzXG4gICAgbm9JdGVyYXRpb24gPSBmYWxzZSwgLy8gaWYgaXRlbSBpcyBub3QgYmFzZWQgb24gdGltZSAoZXg6IGRvd25sb2FkLCB1cGxvYWQsIHRyYW5zZmVyKVxuICAgIG5vSXRlcmF0aW9uVGV4dCxcbiAgICBub0JvcmRlciwgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYm90dG9tIG9mIHRoZSBpdGVtXG4gICAgbm9QcmljZSwgLy8gcmVtb3ZlIHRoZSBwcmljZSBvbiByaWdodCBzaWRlIG9mIHRoZSB0YWJsZVxuICAgIGlzRGVmaW5lZCA9IHRydWUsXG4gICAgY2hpbGRyZW4gPSBudWxsLFxuICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNMYXN0RWxlbWVudCA9IGZhbHNlLFxuICAgIGlzUHJpbWFyeUJhY2tncm91bmQgPSBmYWxzZSxcbiAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgIGl0ZXJhdGlvbjogcmVjZWl2ZWRJdGVyYXRpb24sIC8vIE9iamVjdCBmcm9tIHBhcmVudCB0aGF0IGNvbnRhaW5zIHRpbWUgcGVyaW9kIChob3VycywgZGF5cywgbW9udGhzKVxuICAgIHNob3VsZEJlSGlkZGVuID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsXG4gICAgaGlkZUZyb21PdmVybGF5ID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaW4gYW55IGNhc2VcbiAgICB0ZXh0Tm90RGVmaW5lZCwgLy8gVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICBhbmltYXRlZCA9IGZhbHNlLCAvLyBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgIHRhYnVsYXRpb24sIC8vIEluY3JlYXNlIGxlZnQgcGFkZGluZyBvZiB0aGUgaXRlbVxuICAgIGxhYmVsVGV4dFZhcmlhbnQsIC8vIFRvIGNoYW5nZSBsZWZ0IGNlbGwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAgbGFiZWxUZXh0UHJvbWluZW5jZSwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHByb21pbmVuY2VcbiAgICBub3RpY2UsIC8vIFRvIGRpc3BsYXkgYSBncmF5IHRleHQgYmVsb3cgdGhlIGxhYmVsXG4gICAgc3RyaWtlVGhyb3VnaCwgLy8gVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gIH06IEl0ZW1Qcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgbG9jYWxlcywgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuXG4gICAgbGV0IGl0ZXJhdGlvbjogSXRlcmF0aW9uIHwgdW5kZWZpbmVkXG5cbiAgICBpZiAobm9JdGVyYXRpb24pIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHtcbiAgICAgICAgLi4uKHJlY2VpdmVkSXRlcmF0aW9uID8/IHsgdmFsdWU6IDAgfSksXG4gICAgICAgIHVuaXQ6ICdob3VycycsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHJlY2VpdmVkSXRlcmF0aW9uXG4gICAgfVxuXG4gICAgY29uc3QgcHJpY2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChtb250aGx5UHJpY2UgJiYgYmFzZVByaWNlID09PSAwKSB7XG4gICAgICAgIHJldHVybiBtb250aGx5UHJpY2UgLyBtdWx0aXBsaWVyLm1vbnRoc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVByaWNlXG4gICAgfSwgW2Jhc2VQcmljZSwgbW9udGhseVByaWNlXSlcblxuICAgIGNvbnN0IHVuaXQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghYmFzZVVuaXQpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QudW5pdHMuZ2IubGFiZWwnXVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVVuaXRcbiAgICB9LCBbYmFzZVVuaXQsIGxvY2FsZXNdKVxuXG4gICAgY29uc3QgeyBpc092ZXJsYXkgfSA9IHVzZU92ZXJsYXkoKVxuICAgIGNvbnN0IFJvdyA9IGlzT3ZlcmxheSA/IE92ZXJsYXlSb3cgOiBTdHlsZWRUclxuICAgIGNvbnN0IENlbGwgPSBpc092ZXJsYXkgPyBTdHlsZWRDZWxsLndpdGhDb21wb25lbnQoJ2RpdicpIDogU3R5bGVkQ2VsbFxuICAgIGNvbnN0IExlZnRTaWRlID0gaXNPdmVybGF5ID8gJ2RpdicgOiBTdHlsZWRMZWZ0U2lkZVxuXG4gICAgY29uc3QgW2Ftb3VudCwgc2V0QW1vdW50XSA9IHVzZVN0YXRlKGN1cnJlbnRBbW91bnQpXG4gICAgY29uc3QgW2lzVmFyaWFudCwgc2V0SXNWYXJpYW50XSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHNldEFtb3VudChjdXJyZW50QW1vdW50KSwgW3NldEFtb3VudCwgY3VycmVudEFtb3VudF0pXG4gICAgdXNlRWZmZWN0KCgpID0+IG9uQW1vdW50Q2hhbmdlPy4oYW1vdW50KSwgW29uQW1vdW50Q2hhbmdlLCBhbW91bnRdKVxuXG4gICAgY29uc3QgaXRlbUNhbGxiYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAobG9jYWxBbW91bnQ6IG51bWJlciwgbG9jYWxJc1ZhcmlhbnQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgc2V0QW1vdW50KGxvY2FsQW1vdW50KVxuICAgICAgICBzZXRJc1ZhcmlhbnQobG9jYWxJc1ZhcmlhbnQpXG4gICAgICB9LFxuICAgICAgW3NldEFtb3VudCwgc2V0SXNWYXJpYW50XSxcbiAgICApXG5cbiAgICBjb25zdCBpZCA9IHVzZUlkKClcblxuICAgIC8vIFdlIHJlbW92ZSBJdGVtIGZyb20gb2JqZWN0IGxpc3Qgd2hlbiBJZW0gY29tcG9uZW50IHVubW91bnQgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgIHVzZUVmZmVjdChcbiAgICAgICgpID0+ICgpID0+IHByb2R1Y3RzQ2FsbGJhY2s/LnJlbW92ZSh7IGlkIH0pLFxuICAgICAgW2lkLCBwcm9kdWN0c0NhbGxiYWNrXSxcbiAgICApXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFpc092ZXJsYXkpIHtcbiAgICAgICAgcHJvZHVjdHNDYWxsYmFjaz8uYWRkKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBpc1ZhcmlhbnQsXG4gICAgICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICBub0l0ZXJhdGlvbixcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBwcmljZSxcbiAgICAgIGRpc2NvdW50LFxuICAgICAgYW1vdW50LFxuICAgICAgaWQsXG4gICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgbWF4QW1vdW50LFxuICAgICAgbm9JdGVyYXRpb24sXG4gICAgICBpc1ZhcmlhbnQsXG4gICAgICBhbW91bnRGcmVlLFxuICAgICAgaXNPdmVybGF5LFxuICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgIF0pXG5cbiAgICBjb25zdCBjb21wdXRlZEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50LFxuICAgICAgICAgIGFtb3VudEZyZWUsXG4gICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgcHJpY2UsXG4gICAgICAgICAgdGltZUFtb3VudDogbm9JdGVyYXRpb24gPyAxIDogKGl0ZXJhdGlvbj8udmFsdWUgPz8gMSksXG4gICAgICAgICAgdGltZVVuaXQ6IG5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IChpdGVyYXRpb24/LnVuaXQgPz8gJ2hvdXJzJyksXG4gICAgICAgIH0pLFxuICAgICAgW3ByaWNlLCBhbW91bnQsIGFtb3VudEZyZWUsIGl0ZXJhdGlvbiwgbm9JdGVyYXRpb24sIGRpc2NvdW50XSxcbiAgICApXG5cbiAgICBjb25zdCBjb21wdXRlZE1heEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50OiBtYXhBbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIG1heEFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFpdGVyYXRpb24/LnVuaXQpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24/LnVuaXRdXG4gICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbj8udW5pdF1cbiAgICB9LCBbaXRlcmF0aW9uPy51bml0LCBsb25nRnJhY3Rpb25EaWdpdHNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxSb3dcbiAgICAgICAgaGlkZUZyb21PdmVybGF5PXtoaWRlRnJvbU92ZXJsYXl9XG4gICAgICAgIGlzRmlyc3RFbGVtZW50PXtpc0ZpcnN0RWxlbWVudH1cbiAgICAgICAgc2hvdWxkQmVIaWRkZW49e3Nob3VsZEJlSGlkZGVufVxuICAgICAgPlxuICAgICAgICA8Q2VsbFxuICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyICYmICFpc092ZXJsYXl9XG4gICAgICAgICAgdGFidWxhdGlvbj17dGFidWxhdGlvbn1cbiAgICAgICAgICB3aWR0aD17IWlzT3ZlcmxheSA/IE1BWF9DRUxMX1dJRFRIIDogJ2luaGVyaXQnfVxuICAgICAgICA+XG4gICAgICAgICAgPExlZnRTaWRlPlxuICAgICAgICAgICAgPFN0YWNrPlxuICAgICAgICAgICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtsYWJlbFRleHRQcm9taW5lbmNlID8/ICdkZWZhdWx0J31cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e2xhYmVsVGV4dFZhcmlhbnQgPz8gJ2JvZHknfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAge3Rvb2x0aXBJbmZvID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZERpdj5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRvb2x0aXAgdGV4dD17dG9vbHRpcEluZm99PlxuICAgICAgICAgICAgICAgICAgICAgIDxIZWxwQ2lyY2xlT3V0bGluZUljb24gc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVG9vbHRpcD5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgIHtzdWJMYWJlbCAmJiAhaXNPdmVybGF5ID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHQgYXM9XCJwXCIgaXRhbGljIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICB7c3ViTGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge2Rpc2NvdW50ID4gMCAmJiBkaXNjb3VudFRleHQgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkQmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgcHJvbWluZW5jZT1cInN0cm9uZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7ZGlzY291bnRUZXh0fVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRCYWRnZT5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAge25vdGljZSA/IChcbiAgICAgICAgICAgICAgICA8TWF4V2lkdGhUZXh0IGFzPVwicFwiIHByb21pbmVuY2U9XCJ3ZWFrXCIgdmFyaWFudD1cImNhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgIHtub3RpY2V9XG4gICAgICAgICAgICAgICAgPC9NYXhXaWR0aFRleHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgIDxTdHlsZWRSZXNvdXJjZU5hbWUgYW5pbWF0ZWQ9e2FuaW1hdGVkfSBpc092ZXJsYXk9e2lzT3ZlcmxheX0+XG4gICAgICAgICAgICAgIHtpc0RlZmluZWRcbiAgICAgICAgICAgICAgICA/IENoaWxkcmVuLm1hcChjaGlsZHJlbiwgY2hpbGQgPT5cbiAgICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgICAgPyBjbG9uZUVsZW1lbnQoY2hpbGQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGV4dE5vdERlZmluZWQgfHwgbG9jYWxlc1snZXN0aW1hdGUuY29zdC5ub3REZWZpbmVkJ119XG4gICAgICAgICAgICA8L1N0eWxlZFJlc291cmNlTmFtZT5cbiAgICAgICAgICA8L0xlZnRTaWRlPlxuICAgICAgICA8L0NlbGw+XG4gICAgICAgIHshaXNPdmVybGF5ID8gKFxuICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGxcbiAgICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyfVxuICAgICAgICAgICAgcHJpbWFyeT17aXNQcmltYXJ5QmFja2dyb3VuZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7IW5vUHJpY2UgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPFN0eWxlTm9QcmljZUl0ZW1cbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtcbiAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRJdGVtUHJpY2UgPT09IDAgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICA/ICd3ZWFrJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2RlZmF1bHQnXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ25ldXRyYWwnXG4gICAgICAgICAgICAgICAgICAgICAgOiAncHJpbWFyeSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHN0cmlrZVRocm91Z2g9e3N0cmlrZVRocm91Z2h9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PXtub0l0ZXJhdGlvblRleHQgPyAnaGVhZGluZ1NtYWxsJyA6ICdib2R5U3Ryb25nJ31cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cHJpY2VUZXh0fVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHRcbiAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXROdW1iZXIoY29tcHV0ZWRJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIHtub0l0ZXJhdGlvblRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVNtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgL3tub0l0ZXJhdGlvblRleHR9XG4gICAgICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHQgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPiAwXG4gICAgICAgICAgICAgICAgICAgID8gYCAtICR7Zm9ybWF0TnVtYmVyKGNvbXB1dGVkTWF4SXRlbVByaWNlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1N0eWxlTm9QcmljZUl0ZW0+XG4gICAgICAgICAgICAgICAgeyhhbW91bnQgLSBhbW91bnRGcmVlICE9PSAxICYmIGNvbXB1dGVkSXRlbVByaWNlID4gMCkgfHxcbiAgICAgICAgICAgICAgICAobWF4QW1vdW50ID4gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDApID8gKFxuICAgICAgICAgICAgICAgICAgPFRleHRBbGlnblJpZ2h0IGFzPVwicFwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtmb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdDogJ2hvdXJzJyxcbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGxvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcuaG91cnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge1RJTUVfUkVMQVRFRF9VTklULmluY2x1ZGVzKHVuaXQgYXMgVW5pdHMpXG4gICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy4ke3VuaXQgYXMgVW5pdHN9LmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgICAgOiBgLyR7dW5pdH1gfVxuICAgICAgICAgICAgICAgICAgICB7IW5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgPyBgLyR7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VzdGltYXRlLmNvc3QudW5pdHMuaG91cnMubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIDwvVGV4dEFsaWduUmlnaHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9Sb3c+XG4gICAgKVxuICB9LFxuKVxuIl19 */"));
93
- const StyleNoPriceItem = /* @__PURE__ */ _styled(Text, process.env.NODE_ENV === "production" ? {
94
- target: "e1kzy2rr0"
95
- } : {
96
- target: "e1kzy2rr0",
97
- label: "StyleNoPriceItem"
98
- })(process.env.NODE_ENV === "production" ? {
99
- name: "2qga7i",
100
- styles: "text-align:right"
101
- } : {
102
- name: "2qga7i",
103
- styles: "text-align:right/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0NvbXBvbmVudHMvSXRlbS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcU9xQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Db21wb25lbnRzL0l0ZW0udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBIZWxwQ2lyY2xlT3V0bGluZUljb24gfSBmcm9tICdAdWx0cmF2aW9sZXQvaWNvbnMnXG5pbXBvcnQgeyBCYWRnZSwgU3RhY2ssIFRleHQsIFRvb2x0aXAsIHpvb21JbiB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUlkLFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBPdmVybGF5Um93LFxuICBwcmljZUNlbGwsXG4gIENlbGwgYXMgU3R5bGVkQ2VsbCxcbiAgU3R5bGVkRGl2LFxuICBTdHlsZWRMZWZ0U2lkZSxcbiAgU3R5bGVkVHIsXG59IGZyb20gJy4uL2NvbXBvbmVudFN0eWxlJ1xuaW1wb3J0IHtcbiAgTUFYX0NFTExfV0lEVEgsXG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyxcbiAgbXVsdGlwbGllcixcbn0gZnJvbSAnLi4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4uL2hlbHBlcidcbmltcG9ydCB7IHVzZU92ZXJsYXkgfSBmcm9tICcuLi9PdmVybGF5Q29udGV4dCdcbmltcG9ydCB0eXBlIHtcbiAgQmFyZUVzdGltYXRlUHJvZHVjdCxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuLi90eXBlcydcblxuY29uc3QgVElNRV9SRUxBVEVEX1VOSVQ6IFVuaXRzW10gPSBbXG4gICdzZWNvbmRzJyxcbiAgJ21pbnV0ZXMnLFxuICAnaG91cnMnLFxuICAnZGF5cycsXG4gICdtb250aHMnLFxuXVxuXG5jb25zdCBTdHlsZWRSZXNvdXJjZU5hbWUgPSBzdHlsZWQoJ2RpdicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IHByb3AgPT4gIVsnaXNPdmVybGF5JywgJ2FuaW1hdGVkJ10uaW5jbHVkZXMocHJvcCksXG59KTx7XG4gIGlzT3ZlcmxheTogYm9vbGVhblxuICBhbmltYXRlZDogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246ICR7KHsgaXNPdmVybGF5IH0pID0+IChpc092ZXJsYXkgPyAnaW5pdGlhbCcgOiAncmlnaHQnKX07XG5cbiAgJHsoeyBpc092ZXJsYXksIGFuaW1hdGVkIH0pID0+XG4gICAgaXNPdmVybGF5XG4gICAgICA/IGNzc2BcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbmltYXRpb246ICR7YW5pbWF0ZWQgPyBjc3NgODAwbXMgJHt6b29tSW59YCA6ICcnfTtcbiAgICAgICAgYFxuICAgICAgOiBudWxsfVxuYFxuXG5jb25zdCBTdHlsZWRCYWRnZSA9IHN0eWxlZChCYWRnZSlgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5gXG5cbmNvbnN0IFN0eWxlZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1hcmdpbi1sZWZ0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycxJ119O1xuYFxuXG5jb25zdCBNYXhXaWR0aFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIG1heC13aWR0aDogNzUlO1xuYFxuXG5jb25zdCBUZXh0QWxpZ25SaWdodCA9IHN0eWxlZChUZXh0KWBcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5gXG5cbmNvbnN0IFN0eWxlZFRvb2x0aXAgPSBzdHlsZWQoVG9vbHRpcClgXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKFN0eWxlZENlbGwpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG5gXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXRlbUNhbGxiYWNrOiAoYW1vdW50OiBudW1iZXIsIGlzVmFyaWFudDogYm9vbGVhbikgPT4gdm9pZFxuICBhbW91bnQ6IG51bWJlclxuICBtYXhBbW91bnQ6IG51bWJlclxuICB1bml0OiBzdHJpbmdcbn1cblxudHlwZSBJdGVtUHJvcHMgPSB7XG4gIGFtb3VudD86IG51bWJlclxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXJlIGZyZWUuIEl0IHdpbGwgYmUgZGVkdWN0ZWQgdG8gcHJpY2Ugb2YgdGhlIGl0ZW0uXG4gICAqL1xuICBhbW91bnRGcmVlPzogbnVtYmVyXG4gIC8qKlxuICAgKiBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgYW5pbWF0ZWQ/OiBib29sZWFuXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlXG4gIGRpc2NvdW50PzogbnVtYmVyXG4gIGRpc2NvdW50VGV4dD86IHN0cmluZ1xuICAvKipcbiAgICogSGlkZSBlbGVtZW50IGZyb20gb3ZlcmxheVxuICAgKi9cbiAgaGlkZUZyb21PdmVybGF5PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0RlZmluZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBEbyBub3Qgc2V0IHRoaXMgcHJvcCwgaXQgaXMgdHJhbnNmZXJyZWQgZnJvbSBwYXJlbnRcbiAgICovXG4gIGlzRmlyc3RFbGVtZW50PzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBpc1ByaW1hcnlCYWNrZ3JvdW5kPzogYm9vbGVhblxuICAvKipcbiAgICogRG8gbm90IHNldCB0aGlzIHByb3AsIGl0IGlzIHRyYW5zZmVycmVkIGZyb20gcGFyZW50XG4gICAqL1xuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgLyoqXG4gICAqIFN0cmluZyB0aGF0IGlzIGRpc3BsYXllZCBvbiBsZWZ0IHBhcnQgb2YgdGhlIGl0ZW0sIGl0IGRlZmluZXMgdGhlIGl0ZW1cbiAgICovXG4gIGxhYmVsPzogUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgdmFyaWFudFxuICAgKi9cbiAgbGFiZWxUZXh0VmFyaWFudD86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsndmFyaWFudCddXG4gIC8qKlxuICAgKiBDaGFuZ2VzIGxhYmVsIHR5cG9ncmFwaHkgcHJvbWluZW5jZVxuICAgKi9cbiAgbGFiZWxUZXh0UHJvbWluZW5jZT86IENvbXBvbmVudFByb3BzPHR5cGVvZiBUZXh0PlsncHJvbWluZW5jZSddXG4gIC8qKlxuICAgKiBJZiB5b3VyIHByaWNlIGhhcyBhIGxvdCBvZiBudW1iZXIgYWZ0ZXIgZGVjaW1hbCBwb2ludCAoZXg6IDAuMDAwMDA3NikgLSB1cCA4IGZyYWN0aW9uIGRpZ2l0c1xuICAgKi9cbiAgbG9uZ0ZyYWN0aW9uRGlnaXRzPzogYm9vbGVhblxuICAvKipcbiAgICogQ3JlYXRlIGEgcmFuZ2UgcHJpY2Ugd2l0aCBbYW1vdW50IC0gbWF4QW1vdW50XSB2YWx1ZXMgYW5kIHByaWNlc1xuICAgKi9cbiAgbWF4QW1vdW50PzogbnVtYmVyXG4gIC8qKlxuICAgKiBQcmljZSBwZXIgbW9udGhcbiAgICovXG4gIG1vbnRobHlQcmljZT86IG51bWJlclxuICAvKipcbiAgICogUmVtb3ZlIGJvcmRlciBib3R0b20gb2YgdGhlIGl0ZW1cbiAgICovXG4gIG5vQm9yZGVyPzogYm9vbGVhblxuICAvKipcbiAgICogSWYgdGhlIHByaWNlIG9mIHRoZSBpdGVtIGlzIG5vdCBiYXNlZCBvbiB0aW1lIGVuYWJsZSB0aGlzIHByb3AuIGV4OiA1a2cgb2YgY2hvY29sYXRlIGlzIHNhbWUgcHJpY2Ugb3ZlciAxIG1vbnRoIG9yIDEgaG91ci5cbiAgICovXG4gIG5vSXRlcmF0aW9uPzogYm9vbGVhblxuICBub0l0ZXJhdGlvblRleHQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgcHJpY2Ugb24gdGhlIHJpZ2h0IHNlY3Rpb24gb2YgdGhlIHRhYmxlXG4gICAqL1xuICBub1ByaWNlPzogYm9vbGVhblxuICAvKipcbiAgICogTm90aWNlIHRvIGRpc3BsYXkgYmVsb3cgdGhlIGxhYmVsXG4gICAqL1xuICBub3RpY2U/OiBzdHJpbmdcbiAgb25BbW91bnRDaGFuZ2U/OiAoYW1vdW50OiBudW1iZXIpID0+IHZvaWRcbiAgLyoqXG4gICAqIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICovXG4gIHByaWNlPzogbnVtYmVyXG4gIHByaWNlVGV4dD86IFJlYWN0Tm9kZVxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICAvKipcbiAgICogSGlkZSBpdGVtIGZyb20gb3ZlcmxheSBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxcbiAgICovXG4gIHNob3VsZEJlSGlkZGVuPzogYm9vbGVhblxuICAvKipcbiAgICogRGlzcGxheSBhIGNvbXBsZW1lbnRhcnkgdGV4dCBvbiB0aGUgcmlnaHQgb2YgdGhlIGxhYmVsXG4gICAqL1xuICBzdWJMYWJlbD86IHN0cmluZ1xuICAvKipcbiAgICogSW5jcmVhc2UgbGVmdCBwYWRkaW5nIG9mIHRoZSBpdGVtIGxpa2VcbiAgICovXG4gIHRhYnVsYXRpb24/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRleHQgdG8gZGlzcGxheSBpbiBjYXNlIG9mIG5vdCBkZWZpbmVkIHZhbHVlXG4gICAqL1xuICB0ZXh0Tm90RGVmaW5lZD86IHN0cmluZ1xuICAvKipcbiAgICogRGlzcGxheSBuZWFyIGxhYmVsLCBhbiBpY29uIHdpdGggYSB0b29sdGlwIHRoYXQgY29udGFpbnMgeW91ciB0ZXh0XG4gICAqL1xuICB0b29sdGlwSW5mbz86IHN0cmluZ1xuICAvKipcbiAgICogVW5pdCBvZiB5b3VyIGl0ZW0sIGV4YW1wbGVzOiBHQiwgTUIsIE5vZGUsIFF1ZXJpZXMsIGV0Yy5cbiAgICovXG4gIHVuaXQ/OlxuICAgIHwgJ21iJ1xuICAgIHwgJ2diJ1xuICAgIHwgJ3RiJ1xuICAgIHwgJ3NlY29uZHMnXG4gICAgfCAnbWludXRlcydcbiAgICB8ICdob3VycydcbiAgICB8ICdkYXlzJ1xuICAgIHwgJ21vbnRocydcbiAgICB8ICd5ZWFycydcbiAgICAvLyBBbGxvdyBhIHN0cmluZyBmb3IgdW5pdCBidXQga2VlcCBhdXRvY29tcGxldGUgZm9yIHRoZSBhYm92ZSB2YWx1ZXNcbiAgICB8IChzdHJpbmcgJiBOb25OdWxsYWJsZTx1bmtub3duPilcbiAgLypcbiAgICogVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gICAqL1xuICBzdHJpa2VUaHJvdWdoPzogYm9vbGVhblxufVxuXG5jb25zdCBTdHlsZU5vUHJpY2VJdGVtID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuZXhwb3J0IGNvbnN0IEl0ZW0gPSBtZW1vKFxuICAoe1xuICAgIGRpc2NvdW50ID0gMCxcbiAgICBwcmljZVRleHQsXG4gICAgZGlzY291bnRUZXh0LFxuICAgIGxhYmVsLFxuICAgIHRvb2x0aXBJbmZvLCAvLyBTaG93cyBhbiBpY29uIHdpdGggdG9vbHRpcCB0aGF0IGNvbnRhaW5zIHRoaXMgdGV4dFxuICAgIHN1YkxhYmVsID0gJycsIC8vIFVzdWFsbHkgdXNlZCBmb3Igc2hvd2luZyBhbW91bnQgdGhhdCBpcyBmcmVlXG4gICAgcHJpY2U6IGJhc2VQcmljZSA9IDAsIC8vIEhvdXJseSBwcmljZSBmb3Igb25lIHVuaXRcbiAgICBtb250aGx5UHJpY2UgPSAwLCAvLyBQcmljZSBwZXIgbW9udGhcbiAgICB1bml0OiBiYXNlVW5pdCwgLy8gQ2FuIGJlIEdCLCBNQiwgTm9kZSwgUXVlcmllcywgZXRjLlxuICAgIGFtb3VudDogY3VycmVudEFtb3VudCA9IDEsIC8vIEN1cnJlbnQgbnVtYmVyIG9mIGl0ZW1zXG4gICAgb25BbW91bnRDaGFuZ2UsXG4gICAgYW1vdW50RnJlZSA9IDAsIC8vIEFtb3VudCB0aGF0IGlzIGZyZWUgLSBvZmZlcmVkIGJ5IGNvbXBhbnlcbiAgICBtYXhBbW91bnQgPSAwLCAvLyBNYXggYW1vdW50IC0gdXNlZCBmb3Iga3ViZXJuZXRlcyBmb3IgZXhhbXBsZVxuICAgIGxvbmdGcmFjdGlvbkRpZ2l0cyA9IGZhbHNlLCAvLyBJbiBjYXNlIHByaWNlIGlzIHJlYWxseSBsb25nIDAuMDAwMDA3NiAtIHVwIDcgZnJhY3Rpb24gZGlnaXRzXG4gICAgbm9JdGVyYXRpb24gPSBmYWxzZSwgLy8gaWYgaXRlbSBpcyBub3QgYmFzZWQgb24gdGltZSAoZXg6IGRvd25sb2FkLCB1cGxvYWQsIHRyYW5zZmVyKVxuICAgIG5vSXRlcmF0aW9uVGV4dCxcbiAgICBub0JvcmRlciwgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYm90dG9tIG9mIHRoZSBpdGVtXG4gICAgbm9QcmljZSwgLy8gcmVtb3ZlIHRoZSBwcmljZSBvbiByaWdodCBzaWRlIG9mIHRoZSB0YWJsZVxuICAgIGlzRGVmaW5lZCA9IHRydWUsXG4gICAgY2hpbGRyZW4gPSBudWxsLFxuICAgIGlzRmlyc3RFbGVtZW50ID0gZmFsc2UsXG4gICAgaXNMYXN0RWxlbWVudCA9IGZhbHNlLFxuICAgIGlzUHJpbWFyeUJhY2tncm91bmQgPSBmYWxzZSxcbiAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgIGl0ZXJhdGlvbjogcmVjZWl2ZWRJdGVyYXRpb24sIC8vIE9iamVjdCBmcm9tIHBhcmVudCB0aGF0IGNvbnRhaW5zIHRpbWUgcGVyaW9kIChob3VycywgZGF5cywgbW9udGhzKVxuICAgIHNob3VsZEJlSGlkZGVuID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsXG4gICAgaGlkZUZyb21PdmVybGF5ID0gZmFsc2UsIC8vIEhpZGUgZWxlbWVudCBmcm9tIG92ZXJsYXkgaW4gYW55IGNhc2VcbiAgICB0ZXh0Tm90RGVmaW5lZCwgLy8gVGV4dCB0byBkaXNwbGF5IGluIGNhc2Ugb2Ygbm90IGRlZmluZWQgdmFsdWVcbiAgICBhbmltYXRlZCA9IGZhbHNlLCAvLyBpZiB0cnVlLCB6b29tSW4gYW5pbWF0aW9uIGlzIHRyaWdnZXJlZFxuICAgIHRhYnVsYXRpb24sIC8vIEluY3JlYXNlIGxlZnQgcGFkZGluZyBvZiB0aGUgaXRlbVxuICAgIGxhYmVsVGV4dFZhcmlhbnQsIC8vIFRvIGNoYW5nZSBsZWZ0IGNlbGwgdHlwb2dyYXBoeSB2YXJpYW50XG4gICAgbGFiZWxUZXh0UHJvbWluZW5jZSwgLy8gVG8gY2hhbmdlIGxlZnQgY2VsbCB0eXBvZ3JhcGh5IHByb21pbmVuY2VcbiAgICBub3RpY2UsIC8vIFRvIGRpc3BsYXkgYSBncmF5IHRleHQgYmVsb3cgdGhlIGxhYmVsXG4gICAgc3RyaWtlVGhyb3VnaCwgLy8gVG8gc3RyaWtlIHRocm91Z2ggdGhlIHByaWNlXG4gIH06IEl0ZW1Qcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgbG9jYWxlcywgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuXG4gICAgbGV0IGl0ZXJhdGlvbjogSXRlcmF0aW9uIHwgdW5kZWZpbmVkXG5cbiAgICBpZiAobm9JdGVyYXRpb24pIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHtcbiAgICAgICAgLi4uKHJlY2VpdmVkSXRlcmF0aW9uID8/IHsgdmFsdWU6IDAgfSksXG4gICAgICAgIHVuaXQ6ICdob3VycycsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZXJhdGlvbiA9IHJlY2VpdmVkSXRlcmF0aW9uXG4gICAgfVxuXG4gICAgY29uc3QgcHJpY2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChtb250aGx5UHJpY2UgJiYgYmFzZVByaWNlID09PSAwKSB7XG4gICAgICAgIHJldHVybiBtb250aGx5UHJpY2UgLyBtdWx0aXBsaWVyLm1vbnRoc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVByaWNlXG4gICAgfSwgW2Jhc2VQcmljZSwgbW9udGhseVByaWNlXSlcblxuICAgIGNvbnN0IHVuaXQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmICghYmFzZVVuaXQpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QudW5pdHMuZ2IubGFiZWwnXVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZVVuaXRcbiAgICB9LCBbYmFzZVVuaXQsIGxvY2FsZXNdKVxuXG4gICAgY29uc3QgeyBpc092ZXJsYXkgfSA9IHVzZU92ZXJsYXkoKVxuICAgIGNvbnN0IFJvdyA9IGlzT3ZlcmxheSA/IE92ZXJsYXlSb3cgOiBTdHlsZWRUclxuICAgIGNvbnN0IENlbGwgPSBpc092ZXJsYXkgPyBTdHlsZWRDZWxsLndpdGhDb21wb25lbnQoJ2RpdicpIDogU3R5bGVkQ2VsbFxuICAgIGNvbnN0IExlZnRTaWRlID0gaXNPdmVybGF5ID8gJ2RpdicgOiBTdHlsZWRMZWZ0U2lkZVxuXG4gICAgY29uc3QgW2Ftb3VudCwgc2V0QW1vdW50XSA9IHVzZVN0YXRlKGN1cnJlbnRBbW91bnQpXG4gICAgY29uc3QgW2lzVmFyaWFudCwgc2V0SXNWYXJpYW50XSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHNldEFtb3VudChjdXJyZW50QW1vdW50KSwgW3NldEFtb3VudCwgY3VycmVudEFtb3VudF0pXG4gICAgdXNlRWZmZWN0KCgpID0+IG9uQW1vdW50Q2hhbmdlPy4oYW1vdW50KSwgW29uQW1vdW50Q2hhbmdlLCBhbW91bnRdKVxuXG4gICAgY29uc3QgaXRlbUNhbGxiYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAobG9jYWxBbW91bnQ6IG51bWJlciwgbG9jYWxJc1ZhcmlhbnQ6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgc2V0QW1vdW50KGxvY2FsQW1vdW50KVxuICAgICAgICBzZXRJc1ZhcmlhbnQobG9jYWxJc1ZhcmlhbnQpXG4gICAgICB9LFxuICAgICAgW3NldEFtb3VudCwgc2V0SXNWYXJpYW50XSxcbiAgICApXG5cbiAgICBjb25zdCBpZCA9IHVzZUlkKClcblxuICAgIC8vIFdlIHJlbW92ZSBJdGVtIGZyb20gb2JqZWN0IGxpc3Qgd2hlbiBJZW0gY29tcG9uZW50IHVubW91bnQgdG8gYXZvaWQgZHVwbGljYXRlc1xuICAgIHVzZUVmZmVjdChcbiAgICAgICgpID0+ICgpID0+IHByb2R1Y3RzQ2FsbGJhY2s/LnJlbW92ZSh7IGlkIH0pLFxuICAgICAgW2lkLCBwcm9kdWN0c0NhbGxiYWNrXSxcbiAgICApXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFpc092ZXJsYXkpIHtcbiAgICAgICAgcHJvZHVjdHNDYWxsYmFjaz8uYWRkKHtcbiAgICAgICAgICBhbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBpc1ZhcmlhbnQsXG4gICAgICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICBub0l0ZXJhdGlvbixcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LCBbXG4gICAgICBwcmljZSxcbiAgICAgIGRpc2NvdW50LFxuICAgICAgYW1vdW50LFxuICAgICAgaWQsXG4gICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgbWF4QW1vdW50LFxuICAgICAgbm9JdGVyYXRpb24sXG4gICAgICBpc1ZhcmlhbnQsXG4gICAgICBhbW91bnRGcmVlLFxuICAgICAgaXNPdmVybGF5LFxuICAgICAgbG9uZ0ZyYWN0aW9uRGlnaXRzLFxuICAgIF0pXG5cbiAgICBjb25zdCBjb21wdXRlZEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50LFxuICAgICAgICAgIGFtb3VudEZyZWUsXG4gICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgcHJpY2UsXG4gICAgICAgICAgdGltZUFtb3VudDogbm9JdGVyYXRpb24gPyAxIDogKGl0ZXJhdGlvbj8udmFsdWUgPz8gMSksXG4gICAgICAgICAgdGltZVVuaXQ6IG5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IChpdGVyYXRpb24/LnVuaXQgPz8gJ2hvdXJzJyksXG4gICAgICAgIH0pLFxuICAgICAgW3ByaWNlLCBhbW91bnQsIGFtb3VudEZyZWUsIGl0ZXJhdGlvbiwgbm9JdGVyYXRpb24sIGRpc2NvdW50XSxcbiAgICApXG5cbiAgICBjb25zdCBjb21wdXRlZE1heEl0ZW1QcmljZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgYW1vdW50OiBtYXhBbW91bnQsXG4gICAgICAgICAgYW1vdW50RnJlZSxcbiAgICAgICAgICBkaXNjb3VudCxcbiAgICAgICAgICBwcmljZSxcbiAgICAgICAgICB0aW1lQW1vdW50OiBub0l0ZXJhdGlvbiA/IDEgOiAoaXRlcmF0aW9uPy52YWx1ZSA/PyAxKSxcbiAgICAgICAgICB0aW1lVW5pdDogbm9JdGVyYXRpb24gPyAnaG91cnMnIDogKGl0ZXJhdGlvbj8udW5pdCA/PyAnaG91cnMnKSxcbiAgICAgICAgfSksXG4gICAgICBbcHJpY2UsIG1heEFtb3VudCwgYW1vdW50RnJlZSwgaXRlcmF0aW9uLCBub0l0ZXJhdGlvbiwgZGlzY291bnRdLFxuICAgIClcblxuICAgIGNvbnN0IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKCFpdGVyYXRpb24/LnVuaXQpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24/LnVuaXRdXG4gICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbj8udW5pdF1cbiAgICB9LCBbaXRlcmF0aW9uPy51bml0LCBsb25nRnJhY3Rpb25EaWdpdHNdKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxSb3dcbiAgICAgICAgaGlkZUZyb21PdmVybGF5PXtoaWRlRnJvbU92ZXJsYXl9XG4gICAgICAgIGlzRmlyc3RFbGVtZW50PXtpc0ZpcnN0RWxlbWVudH1cbiAgICAgICAgc2hvdWxkQmVIaWRkZW49e3Nob3VsZEJlSGlkZGVufVxuICAgICAgPlxuICAgICAgICA8Q2VsbFxuICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyICYmICFpc092ZXJsYXl9XG4gICAgICAgICAgdGFidWxhdGlvbj17dGFidWxhdGlvbn1cbiAgICAgICAgICB3aWR0aD17IWlzT3ZlcmxheSA/IE1BWF9DRUxMX1dJRFRIIDogJ2luaGVyaXQnfVxuICAgICAgICA+XG4gICAgICAgICAgPExlZnRTaWRlPlxuICAgICAgICAgICAgPFN0YWNrPlxuICAgICAgICAgICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtsYWJlbFRleHRQcm9taW5lbmNlID8/ICdkZWZhdWx0J31cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9e2xhYmVsVGV4dFZhcmlhbnQgPz8gJ2JvZHknfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAge3Rvb2x0aXBJbmZvID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZERpdj5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRvb2x0aXAgdGV4dD17dG9vbHRpcEluZm99PlxuICAgICAgICAgICAgICAgICAgICAgIDxIZWxwQ2lyY2xlT3V0bGluZUljb24gc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkVG9vbHRpcD5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkRGl2PlxuICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgIHtzdWJMYWJlbCAmJiAhaXNPdmVybGF5ID8gKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHQgYXM9XCJwXCIgaXRhbGljIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICB7c3ViTGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAge2Rpc2NvdW50ID4gMCAmJiBkaXNjb3VudFRleHQgPyAoXG4gICAgICAgICAgICAgICAgICA8U3R5bGVkQmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgcHJvbWluZW5jZT1cInN0cm9uZ1wiXG4gICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7ZGlzY291bnRUZXh0fVxuICAgICAgICAgICAgICAgICAgPC9TdHlsZWRCYWRnZT5cbiAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgICAge25vdGljZSA/IChcbiAgICAgICAgICAgICAgICA8TWF4V2lkdGhUZXh0IGFzPVwicFwiIHByb21pbmVuY2U9XCJ3ZWFrXCIgdmFyaWFudD1cImNhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgIHtub3RpY2V9XG4gICAgICAgICAgICAgICAgPC9NYXhXaWR0aFRleHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdGFjaz5cbiAgICAgICAgICAgIDxTdHlsZWRSZXNvdXJjZU5hbWUgYW5pbWF0ZWQ9e2FuaW1hdGVkfSBpc092ZXJsYXk9e2lzT3ZlcmxheX0+XG4gICAgICAgICAgICAgIHtpc0RlZmluZWRcbiAgICAgICAgICAgICAgICA/IENoaWxkcmVuLm1hcChjaGlsZHJlbiwgY2hpbGQgPT5cbiAgICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgICAgPyBjbG9uZUVsZW1lbnQoY2hpbGQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1heEFtb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGV4dE5vdERlZmluZWQgfHwgbG9jYWxlc1snZXN0aW1hdGUuY29zdC5ub3REZWZpbmVkJ119XG4gICAgICAgICAgICA8L1N0eWxlZFJlc291cmNlTmFtZT5cbiAgICAgICAgICA8L0xlZnRTaWRlPlxuICAgICAgICA8L0NlbGw+XG4gICAgICAgIHshaXNPdmVybGF5ID8gKFxuICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGxcbiAgICAgICAgICAgIGhhc0JvcmRlcj17IWlzTGFzdEVsZW1lbnQgJiYgIW5vQm9yZGVyfVxuICAgICAgICAgICAgcHJpbWFyeT17aXNQcmltYXJ5QmFja2dyb3VuZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7IW5vUHJpY2UgPyAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPFN0eWxlTm9QcmljZUl0ZW1cbiAgICAgICAgICAgICAgICAgIGFzPVwicFwiXG4gICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPXtcbiAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRJdGVtUHJpY2UgPT09IDAgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPT09IDBcbiAgICAgICAgICAgICAgICAgICAgICA/ICd3ZWFrJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2RlZmF1bHQnXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9e1xuICAgICAgICAgICAgICAgICAgICBjb21wdXRlZEl0ZW1QcmljZSA9PT0gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gJ25ldXRyYWwnXG4gICAgICAgICAgICAgICAgICAgICAgOiAncHJpbWFyeSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHN0cmlrZVRocm91Z2g9e3N0cmlrZVRocm91Z2h9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PXtub0l0ZXJhdGlvblRleHQgPyAnaGVhZGluZ1NtYWxsJyA6ICdib2R5U3Ryb25nJ31cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cHJpY2VUZXh0fVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHRcbiAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXROdW1iZXIoY29tcHV0ZWRJdGVtUHJpY2UsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZm9ybWF0TWF4aW11bUZyYWN0aW9uRGlnaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIHtub0l0ZXJhdGlvblRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHNlbnRpbWVudD1cInByaW1hcnlcIiB2YXJpYW50PVwiYm9keVNtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgL3tub0l0ZXJhdGlvblRleHR9XG4gICAgICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgeyFwcmljZVRleHQgJiYgY29tcHV0ZWRNYXhJdGVtUHJpY2UgPiAwXG4gICAgICAgICAgICAgICAgICAgID8gYCAtICR7Zm9ybWF0TnVtYmVyKGNvbXB1dGVkTWF4SXRlbVByaWNlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGZvcm1hdE1heGltdW1GcmFjdGlvbkRpZ2l0cyxcbiAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1N0eWxlTm9QcmljZUl0ZW0+XG4gICAgICAgICAgICAgICAgeyhhbW91bnQgLSBhbW91bnRGcmVlICE9PSAxICYmIGNvbXB1dGVkSXRlbVByaWNlID4gMCkgfHxcbiAgICAgICAgICAgICAgICAobWF4QW1vdW50ID4gMCAmJiBjb21wdXRlZE1heEl0ZW1QcmljZSA+IDApID8gKFxuICAgICAgICAgICAgICAgICAgPFRleHRBbGlnblJpZ2h0IGFzPVwicFwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgIHtmb3JtYXROdW1iZXIoXG4gICAgICAgICAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdDogJ2hvdXJzJyxcbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGxvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcuaG91cnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge1RJTUVfUkVMQVRFRF9VTklULmluY2x1ZGVzKHVuaXQgYXMgVW5pdHMpXG4gICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy4ke3VuaXQgYXMgVW5pdHN9LmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgICAgOiBgLyR7dW5pdH1gfVxuICAgICAgICAgICAgICAgICAgICB7IW5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgPyBgLyR7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VzdGltYXRlLmNvc3QudW5pdHMuaG91cnMubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIDwvVGV4dEFsaWduUmlnaHQ+XG4gICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9Sb3c+XG4gICAgKVxuICB9LFxuKVxuIl19 */",
104
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
105
- });
106
- const Item = memo(({
107
- discount = 0,
108
- priceText,
109
- discountText,
110
- label,
111
- tooltipInfo,
112
- // Shows an icon with tooltip that contains this text
113
- subLabel = "",
114
- // Usually used for showing amount that is free
115
- price: basePrice = 0,
116
- // Hourly price for one unit
117
- monthlyPrice = 0,
118
- // Price per month
119
- unit: baseUnit,
120
- // Can be GB, MB, Node, Queries, etc.
121
- amount: currentAmount = 1,
122
- // Current number of items
123
- onAmountChange,
124
- amountFree = 0,
125
- // Amount that is free - offered by company
126
- maxAmount = 0,
127
- // Max amount - used for kubernetes for example
128
- longFractionDigits = false,
129
- // In case price is really long 0.0000076 - up 7 fraction digits
130
- noIteration = false,
131
- // if item is not based on time (ex: download, upload, transfer)
132
- noIterationText,
133
- noBorder,
134
- // remove the border bottom of the item
135
- noPrice,
136
- // remove the price on right side of the table
137
- isDefined = true,
138
- children = null,
139
- isFirstElement = false,
140
- isLastElement = false,
141
- isPrimaryBackground = false,
142
- productsCallback,
143
- iteration: receivedIteration,
144
- // Object from parent that contains time period (hours, days, months)
145
- shouldBeHidden = false,
146
- // Hide element from overlay if screen width is small
147
- hideFromOverlay = false,
148
- // Hide element from overlay in any case
149
- textNotDefined,
150
- // Text to display in case of not defined value
151
- animated = false,
152
- // if true, zoomIn animation is triggered
153
- tabulation,
154
- // Increase left padding of the item
155
- labelTextVariant,
156
- // To change left cell typography variant
157
- labelTextProminence,
158
- // To change left cell typography prominence
159
- notice,
160
- // To display a gray text below the label
161
- strikeThrough
162
- // To strike through the price
163
- }) => {
164
- const {
165
- locales,
166
- formatNumber
167
- } = useEstimateCost();
168
- let iteration;
169
- if (noIteration) {
170
- iteration = {
171
- ...receivedIteration ?? {
172
- value: 0
173
- },
174
- unit: "hours"
175
- };
176
- } else {
177
- iteration = receivedIteration;
178
- }
179
- const price = useMemo(() => {
180
- if (monthlyPrice && basePrice === 0) {
181
- return monthlyPrice / multiplier.months;
182
- }
183
- return basePrice;
184
- }, [basePrice, monthlyPrice]);
185
- const unit = useMemo(() => {
186
- if (!baseUnit) {
187
- return locales["estimate.cost.units.gb.label"];
11
+ import { estimateCostOverlayRow, estimateCostCell, paddingLeftCell, estimateCostPriceCell } from "../styles.css.js";
12
+ import { estimateCostTr, estimateCostLeftSide, styledDiv, estimateCostTooltip, estimateCostTextItem, estimateCostBadgeItem, estimateCostMaxWidthText, estimateCostResourceName } from "./components.css.js";
13
+ const TIME_RELATED_UNIT = [
14
+ "seconds",
15
+ "minutes",
16
+ "hours",
17
+ "days",
18
+ "months"
19
+ ];
20
+ const Item = memo(
21
+ ({
22
+ discount = 0,
23
+ priceText,
24
+ discountText,
25
+ label,
26
+ tooltipInfo,
27
+ // Shows an icon with tooltip that contains this text
28
+ subLabel = "",
29
+ // Usually used for showing amount that is free
30
+ price: basePrice = 0,
31
+ // Hourly price for one unit
32
+ monthlyPrice = 0,
33
+ // Price per month
34
+ unit: baseUnit,
35
+ // Can be GB, MB, Node, Queries, etc.
36
+ amount: currentAmount = 1,
37
+ // Current number of items
38
+ onAmountChange,
39
+ amountFree = 0,
40
+ // Amount that is free - offered by company
41
+ maxAmount = 0,
42
+ // Max amount - used for kubernetes for example
43
+ longFractionDigits = false,
44
+ // In case price is really long 0.0000076 - up 7 fraction digits
45
+ noIteration = false,
46
+ // if item is not based on time (ex: download, upload, transfer)
47
+ noIterationText,
48
+ noBorder,
49
+ // remove the border bottom of the item
50
+ noPrice,
51
+ // remove the price on right side of the table
52
+ isDefined = true,
53
+ children = null,
54
+ isFirstElement = false,
55
+ isLastElement = false,
56
+ isPrimaryBackground = false,
57
+ productsCallback,
58
+ iteration: receivedIteration,
59
+ // Object from parent that contains time period (hours, days, months)
60
+ shouldBeHidden = false,
61
+ // Hide element from overlay if screen width is small
62
+ hideFromOverlay = false,
63
+ // Hide element from overlay in any case
64
+ textNotDefined,
65
+ // Text to display in case of not defined value
66
+ animated = false,
67
+ // if true, zoomIn animation is triggered
68
+ tabulation,
69
+ // Increase left padding of the item
70
+ labelTextVariant,
71
+ // To change left cell typography variant
72
+ labelTextProminence,
73
+ // To change left cell typography prominence
74
+ notice,
75
+ // To display a gray text below the label
76
+ strikeThrough,
77
+ // To strike through the price
78
+ style
79
+ }) => {
80
+ const { locales, formatNumber } = useEstimateCost();
81
+ let iteration;
82
+ if (noIteration) {
83
+ iteration = {
84
+ ...receivedIteration ?? { value: 0 },
85
+ unit: "hours"
86
+ };
87
+ } else {
88
+ iteration = receivedIteration;
188
89
  }
189
- return baseUnit;
190
- }, [baseUnit, locales]);
191
- const {
192
- isOverlay
193
- } = useOverlay();
194
- const Row = isOverlay ? OverlayRow : StyledTr;
195
- const Cell$1 = isOverlay ? Cell.withComponent("div", process.env.NODE_ENV === "production" ? {
196
- target: "e1kzy2rr8"
197
- } : {
198
- target: "e1kzy2rr8",
199
- label: "Cell"
200
- }) : Cell;
201
- const LeftSide = isOverlay ? "div" : StyledLeftSide;
202
- const [amount, setAmount] = useState(currentAmount);
203
- const [isVariant, setIsVariant] = useState(false);
204
- useEffect(() => setAmount(currentAmount), [setAmount, currentAmount]);
205
- useEffect(() => onAmountChange?.(amount), [onAmountChange, amount]);
206
- const itemCallback = useCallback((localAmount, localIsVariant) => {
207
- setAmount(localAmount);
208
- setIsVariant(localIsVariant);
209
- }, [setAmount, setIsVariant]);
210
- const id = useId();
211
- useEffect(() => () => productsCallback?.remove({
212
- id
213
- }), [id, productsCallback]);
214
- useEffect(() => {
215
- if (!isOverlay) {
216
- productsCallback?.add({
90
+ const price = useMemo(() => {
91
+ if (monthlyPrice && basePrice === 0) {
92
+ return monthlyPrice / multiplier.months;
93
+ }
94
+ return basePrice;
95
+ }, [basePrice, monthlyPrice]);
96
+ const unit = useMemo(() => {
97
+ if (!baseUnit) {
98
+ return locales["estimate.cost.units.gb.label"];
99
+ }
100
+ return baseUnit;
101
+ }, [baseUnit, locales]);
102
+ const { isOverlay } = useOverlay();
103
+ const Row = isOverlay ? "li" : "tr";
104
+ const Cell = isOverlay ? "div" : "td";
105
+ const LeftSide = "div";
106
+ const [amount, setAmount] = useState(currentAmount);
107
+ const [isVariant, setIsVariant] = useState(false);
108
+ useEffect(() => setAmount(currentAmount), [setAmount, currentAmount]);
109
+ useEffect(() => onAmountChange?.(amount), [onAmountChange, amount]);
110
+ const itemCallback = useCallback(
111
+ (localAmount, localIsVariant) => {
112
+ setAmount(localAmount);
113
+ setIsVariant(localIsVariant);
114
+ },
115
+ [setAmount, setIsVariant]
116
+ );
117
+ const id = useId();
118
+ useEffect(
119
+ () => () => productsCallback?.remove({ id }),
120
+ [id, productsCallback]
121
+ );
122
+ useEffect(() => {
123
+ if (!isOverlay) {
124
+ productsCallback?.add({
125
+ amount,
126
+ amountFree,
127
+ discount,
128
+ id,
129
+ isVariant,
130
+ longFractionDigits,
131
+ maxAmount,
132
+ noIteration,
133
+ price
134
+ });
135
+ }
136
+ }, [
137
+ price,
138
+ discount,
139
+ amount,
140
+ id,
141
+ productsCallback,
142
+ maxAmount,
143
+ noIteration,
144
+ isVariant,
145
+ amountFree,
146
+ isOverlay,
147
+ longFractionDigits
148
+ ]);
149
+ const computedItemPrice = useMemo(
150
+ () => calculatePrice({
217
151
  amount,
218
152
  amountFree,
219
153
  discount,
220
- id,
221
- isVariant,
222
- longFractionDigits,
223
- maxAmount,
224
- noIteration,
225
- price
226
- });
227
- }
228
- }, [price, discount, amount, id, productsCallback, maxAmount, noIteration, isVariant, amountFree, isOverlay, longFractionDigits]);
229
- const computedItemPrice = useMemo(() => calculatePrice({
230
- amount,
231
- amountFree,
232
- discount,
233
- price,
234
- timeAmount: noIteration ? 1 : iteration?.value ?? 1,
235
- timeUnit: noIteration ? "hours" : iteration?.unit ?? "hours"
236
- }), [price, amount, amountFree, iteration, noIteration, discount]);
237
- const computedMaxItemPrice = useMemo(() => calculatePrice({
238
- amount: maxAmount,
239
- amountFree,
240
- discount,
241
- price,
242
- timeAmount: noIteration ? 1 : iteration?.value ?? 1,
243
- timeUnit: noIteration ? "hours" : iteration?.unit ?? "hours"
244
- }), [price, maxAmount, amountFree, iteration, noIteration, discount]);
245
- const formatMaximumFractionDigits = useMemo(() => {
246
- if (!iteration?.unit) {
247
- return void 0;
248
- }
249
- return longFractionDigits ? maximumFractionDigitsLong[iteration?.unit] : maximumFractionDigits[iteration?.unit];
250
- }, [iteration?.unit, longFractionDigits]);
251
- return /* @__PURE__ */ jsxs(Row, { hideFromOverlay, isFirstElement, shouldBeHidden, children: [
252
- /* @__PURE__ */ jsx(Cell$1, { hasBorder: !isLastElement && !noBorder && !isOverlay, tabulation, width: !isOverlay ? MAX_CELL_WIDTH : "inherit", children: /* @__PURE__ */ jsxs(LeftSide, { children: [
253
- /* @__PURE__ */ jsxs(Stack, { children: [
254
- /* @__PURE__ */ jsxs(Stack, { direction: "row", children: [
255
- /* @__PURE__ */ jsx(Text, { as: "p", prominence: labelTextProminence ?? "default", variant: labelTextVariant ?? "body", children: label }),
256
- tooltipInfo ? /* @__PURE__ */ jsx(StyledDiv, { children: /* @__PURE__ */ jsx(StyledTooltip, { text: tooltipInfo, children: /* @__PURE__ */ jsx(HelpCircleOutlineIcon, { size: "medium" }) }) }) : null,
257
- subLabel && !isOverlay ? /* @__PURE__ */ jsx(StyledText, { as: "p", italic: true, sentiment: "primary", variant: "body", children: subLabel }) : null,
258
- discount > 0 && discountText ? /* @__PURE__ */ jsx(StyledBadge, { prominence: "strong", sentiment: "warning", size: "small", children: discountText }) : null
259
- ] }),
260
- notice ? /* @__PURE__ */ jsx(MaxWidthText, { as: "p", prominence: "weak", variant: "caption", children: notice }) : null
261
- ] }),
262
- /* @__PURE__ */ jsx(StyledResourceName, { animated, isOverlay, children: isDefined ? Children.map(children, (child) => isValidElement(child) ? cloneElement(child, {
263
- amount,
264
- itemCallback,
265
- maxAmount,
266
- unit
267
- }) : null) : textNotDefined || locales["estimate.cost.notDefined"] })
268
- ] }) }),
269
- !isOverlay ? /* @__PURE__ */ jsx(StyledPriceCell, { hasBorder: !isLastElement && !noBorder, primary: isPrimaryBackground, children: !noPrice ? /* @__PURE__ */ jsxs(Fragment, { children: [
270
- /* @__PURE__ */ jsxs(StyleNoPriceItem, { as: "p", prominence: computedItemPrice === 0 && computedMaxItemPrice === 0 ? "weak" : "default", sentiment: computedItemPrice === 0 && computedMaxItemPrice === 0 ? "neutral" : "primary", strikeThrough, variant: noIterationText ? "headingSmall" : "bodyStrong", children: [
271
- priceText,
272
- !priceText ? formatNumber(computedItemPrice, {
273
- maximumFractionDigits: formatMaximumFractionDigits
274
- }) : null,
275
- noIterationText ? /* @__PURE__ */ jsxs(Text, { as: "span", sentiment: "primary", variant: "bodySmall", children: [
276
- "/",
277
- noIterationText
278
- ] }) : null,
279
- !priceText && computedMaxItemPrice > 0 ? ` - ${formatNumber(computedMaxItemPrice, {
280
- maximumFractionDigits: formatMaximumFractionDigits
281
- })}` : null
282
- ] }),
283
- amount - amountFree !== 1 && computedItemPrice > 0 || maxAmount > 0 && computedMaxItemPrice > 0 ? /* @__PURE__ */ jsxs(TextAlignRight, { as: "p", variant: "body", children: [
284
- formatNumber(calculatePrice({
285
- amount: 1,
286
- discount,
287
- price,
288
- timeAmount: 1,
289
- timeUnit: "hours"
290
- }), {
291
- maximumFractionDigits: longFractionDigits ? maximumFractionDigitsLong.hours : maximumFractionDigits.hours
292
- }),
293
- TIME_RELATED_UNIT.includes(unit) ? locales[`estimate.cost.units.${unit}.label`].toLowerCase() : `/${unit}`,
294
- !noIteration ? `/${locales["estimate.cost.units.hours.label"].toLowerCase()}` : null
295
- ] }) : null
296
- ] }) : null }) : null
297
- ] });
298
- });
154
+ price,
155
+ timeAmount: noIteration ? 1 : iteration?.value ?? 1,
156
+ timeUnit: noIteration ? "hours" : iteration?.unit ?? "hours"
157
+ }),
158
+ [price, amount, amountFree, iteration, noIteration, discount]
159
+ );
160
+ const computedMaxItemPrice = useMemo(
161
+ () => calculatePrice({
162
+ amount: maxAmount,
163
+ amountFree,
164
+ discount,
165
+ price,
166
+ timeAmount: noIteration ? 1 : iteration?.value ?? 1,
167
+ timeUnit: noIteration ? "hours" : iteration?.unit ?? "hours"
168
+ }),
169
+ [price, maxAmount, amountFree, iteration, noIteration, discount]
170
+ );
171
+ const formatMaximumFractionDigits = useMemo(() => {
172
+ if (!iteration?.unit) {
173
+ return void 0;
174
+ }
175
+ return longFractionDigits ? maximumFractionDigitsLong[iteration?.unit] : maximumFractionDigits[iteration?.unit];
176
+ }, [iteration?.unit, longFractionDigits]);
177
+ return /* @__PURE__ */ jsxs(
178
+ Row,
179
+ {
180
+ className: isOverlay ? estimateCostOverlayRow({
181
+ hideFromOverlay,
182
+ isFirstElement,
183
+ shouldBeHidden
184
+ }) : estimateCostTr,
185
+ style,
186
+ children: [
187
+ /* @__PURE__ */ jsx(
188
+ Cell,
189
+ {
190
+ className: estimateCostCell({
191
+ hasBorder: !isLastElement && !noBorder && !isOverlay
192
+ }),
193
+ style: assignInlineVars({
194
+ [paddingLeftCell]: `${(tabulation ?? 0) * 8 + 16}px`
195
+ }),
196
+ children: /* @__PURE__ */ jsxs(LeftSide, { className: isOverlay ? "" : estimateCostLeftSide, children: [
197
+ /* @__PURE__ */ jsxs(Stack, { children: [
198
+ /* @__PURE__ */ jsxs(Stack, { direction: "row", children: [
199
+ /* @__PURE__ */ jsx(
200
+ Text,
201
+ {
202
+ as: "p",
203
+ prominence: labelTextProminence ?? "default",
204
+ variant: labelTextVariant ?? "body",
205
+ children: label
206
+ }
207
+ ),
208
+ tooltipInfo ? /* @__PURE__ */ jsx("div", { className: styledDiv, children: /* @__PURE__ */ jsx(Tooltip, { className: estimateCostTooltip, text: tooltipInfo, children: /* @__PURE__ */ jsx(HelpCircleOutlineIcon, { size: "medium" }) }) }) : null,
209
+ subLabel && !isOverlay ? /* @__PURE__ */ jsx(
210
+ Text,
211
+ {
212
+ as: "p",
213
+ className: estimateCostTextItem,
214
+ italic: true,
215
+ sentiment: "primary",
216
+ variant: "body",
217
+ children: subLabel
218
+ }
219
+ ) : null,
220
+ discount > 0 && discountText ? /* @__PURE__ */ jsx(
221
+ Badge,
222
+ {
223
+ className: estimateCostBadgeItem,
224
+ prominence: "strong",
225
+ sentiment: "warning",
226
+ size: "small",
227
+ children: discountText
228
+ }
229
+ ) : null
230
+ ] }),
231
+ notice ? /* @__PURE__ */ jsx(
232
+ Text,
233
+ {
234
+ as: "p",
235
+ className: estimateCostMaxWidthText,
236
+ prominence: "weak",
237
+ variant: "caption",
238
+ children: notice
239
+ }
240
+ ) : null
241
+ ] }),
242
+ /* @__PURE__ */ jsx(
243
+ "div",
244
+ {
245
+ className: estimateCostResourceName({
246
+ isAnimated: isOverlay && animated,
247
+ isOverlay
248
+ }),
249
+ children: isDefined ? Children.map(
250
+ children,
251
+ (child) => isValidElement(child) ? cloneElement(child, {
252
+ amount,
253
+ itemCallback,
254
+ maxAmount,
255
+ unit
256
+ }) : null
257
+ ) : textNotDefined || locales["estimate.cost.notDefined"]
258
+ }
259
+ )
260
+ ] })
261
+ }
262
+ ),
263
+ !isOverlay ? /* @__PURE__ */ jsx(
264
+ "td",
265
+ {
266
+ className: `${estimateCostCell({ hasBorder: !isLastElement && !noBorder, primary: isPrimaryBackground })} ${estimateCostPriceCell}`,
267
+ style: assignInlineVars({
268
+ [paddingLeftCell]: `16px`
269
+ }),
270
+ children: !noPrice ? /* @__PURE__ */ jsxs(Fragment, { children: [
271
+ /* @__PURE__ */ jsxs(
272
+ Text,
273
+ {
274
+ as: "p",
275
+ placement: "right",
276
+ prominence: computedItemPrice === 0 && computedMaxItemPrice === 0 ? "weak" : "default",
277
+ sentiment: computedItemPrice === 0 && computedMaxItemPrice === 0 ? "neutral" : "primary",
278
+ strikeThrough,
279
+ variant: noIterationText ? "headingSmall" : "bodyStrong",
280
+ children: [
281
+ priceText,
282
+ !priceText ? formatNumber(computedItemPrice, {
283
+ maximumFractionDigits: formatMaximumFractionDigits
284
+ }) : null,
285
+ noIterationText ? /* @__PURE__ */ jsxs(Text, { as: "span", sentiment: "primary", variant: "bodySmall", children: [
286
+ "/",
287
+ noIterationText
288
+ ] }) : null,
289
+ !priceText && computedMaxItemPrice > 0 ? ` - ${formatNumber(computedMaxItemPrice, {
290
+ maximumFractionDigits: formatMaximumFractionDigits
291
+ })}` : null
292
+ ]
293
+ }
294
+ ),
295
+ amount - amountFree !== 1 && computedItemPrice > 0 || maxAmount > 0 && computedMaxItemPrice > 0 ? /* @__PURE__ */ jsxs(Text, { as: "p", placement: "right", variant: "body", children: [
296
+ formatNumber(
297
+ calculatePrice({
298
+ amount: 1,
299
+ discount,
300
+ price,
301
+ timeAmount: 1,
302
+ timeUnit: "hours"
303
+ }),
304
+ {
305
+ maximumFractionDigits: longFractionDigits ? maximumFractionDigitsLong.hours : maximumFractionDigits.hours
306
+ }
307
+ ),
308
+ TIME_RELATED_UNIT.includes(unit) ? locales[`estimate.cost.units.${unit}.label`].toLowerCase() : `/${unit}`,
309
+ !noIteration ? `/${locales["estimate.cost.units.hours.label"].toLowerCase()}` : null
310
+ ] }) : null
311
+ ] }) : null
312
+ }
313
+ ) : null
314
+ ]
315
+ }
316
+ );
317
+ }
318
+ );
299
319
  export {
300
320
  Item
301
321
  };