@salutejs/plasma-new-hope 0.193.0-canary.1558.11807380775.0 → 0.193.0-canary.1559.11816419999.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (746) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.css +21 -22
  2. package/cjs/components/Cell/Cell.js +3 -1
  3. package/cjs/components/Cell/Cell.js.map +1 -1
  4. package/cjs/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  5. package/cjs/components/Cell/ui/CellTextbox/CellTextbox.js.map +1 -1
  6. package/cjs/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  7. package/cjs/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js.map +1 -1
  8. package/cjs/components/Chip/Chip.js +3 -1
  9. package/cjs/components/Chip/Chip.js.map +1 -1
  10. package/cjs/components/Combobox/ComboboxNew/Combobox.css +21 -22
  11. package/cjs/components/Combobox/ComboboxNew/Combobox.js +0 -1
  12. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  13. package/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  14. package/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js.map +1 -1
  15. package/cjs/components/Combobox/ComboboxNew/FloatingPopover.js +18 -4
  16. package/cjs/components/Combobox/ComboboxNew/FloatingPopover.js.map +1 -1
  17. package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  18. package/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  19. package/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js.map +1 -1
  20. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.css +21 -22
  21. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.css +21 -22
  22. package/cjs/components/DatePicker/RangeDate/RangeDate.css +21 -22
  23. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +21 -22
  24. package/cjs/components/DatePicker/SingleDate/SingleDate.css +21 -22
  25. package/cjs/components/Dropdown/FloatingPopover.js.map +1 -1
  26. package/cjs/components/Modal/Modal.css +0 -6
  27. package/cjs/components/Modal/Modal.js +13 -25
  28. package/cjs/components/Modal/Modal.js.map +1 -1
  29. package/cjs/components/Modal/Modal.tokens.js +1 -5
  30. package/cjs/components/Modal/Modal.tokens.js.map +1 -1
  31. package/cjs/components/Pagination/Pagination.css +86 -37
  32. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +86 -37
  33. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  34. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js.map +1 -1
  35. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles_10zfeps.css +3 -0
  36. package/cjs/components/Range/Range.css +21 -22
  37. package/cjs/components/Select/FloatingPopover.js +87 -0
  38. package/cjs/components/Select/FloatingPopover.js.map +1 -0
  39. package/cjs/components/Select/Select.css +83 -34
  40. package/cjs/components/Select/Select.js +179 -139
  41. package/cjs/components/Select/Select.js.map +1 -1
  42. package/cjs/components/Select/Select.styles.js +17 -50
  43. package/cjs/components/Select/Select.styles.js.map +1 -1
  44. package/cjs/components/Select/Select.styles_1p5c9p3.css +2 -0
  45. package/cjs/components/Select/Select.tokens.js +122 -78
  46. package/cjs/components/Select/Select.tokens.js.map +1 -1
  47. package/cjs/components/Select/hooks/useKeyboardNavigation.js +19 -72
  48. package/cjs/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
  49. package/cjs/components/Select/hooks/usePathMaps.js +4 -1
  50. package/cjs/components/Select/hooks/usePathMaps.js.map +1 -1
  51. package/cjs/components/Select/ui/Inner/Inner.css +83 -34
  52. package/cjs/components/Select/ui/Inner/Inner.js +9 -9
  53. package/cjs/components/Select/ui/Inner/Inner.js.map +1 -1
  54. package/cjs/components/Select/ui/Inner/ui/Item/Item.css +83 -34
  55. package/cjs/components/Select/ui/Inner/ui/Item/Item.js +20 -12
  56. package/cjs/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  57. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js +34 -51
  58. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  59. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles_1x4bzlm.css +9 -0
  60. package/cjs/components/Select/ui/Target/Target.css +58 -17
  61. package/cjs/components/Select/ui/Target/Target.js +41 -16
  62. package/cjs/components/Select/ui/Target/Target.js.map +1 -1
  63. package/cjs/components/Select/ui/Target/ui/Button/Button.css +5 -5
  64. package/cjs/components/Select/ui/Target/ui/Button/Button.js +11 -17
  65. package/cjs/components/Select/ui/Target/ui/Button/Button.js.map +1 -1
  66. package/cjs/components/Select/ui/Target/ui/Button/Button.styles.js +1 -1
  67. package/cjs/components/Select/ui/Target/ui/Button/Button.styles.js.map +1 -1
  68. package/cjs/components/Select/ui/Target/ui/Button/Button.styles_10g64me.css +5 -0
  69. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.css +53 -38
  70. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +84 -97
  71. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  72. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +38 -103
  73. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  74. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles_q4kc1p.css +3 -0
  75. package/cjs/components/Select/utils/getButtonLabel.js +1 -1
  76. package/cjs/components/Select/utils/getButtonLabel.js.map +1 -1
  77. package/cjs/components/Select/utils/getFallbackPlacements.js +15 -0
  78. package/cjs/components/Select/utils/getFallbackPlacements.js.map +1 -0
  79. package/cjs/components/Select/utils/getItemId.js +10 -0
  80. package/cjs/components/Select/utils/getItemId.js.map +1 -0
  81. package/cjs/components/Select/utils/getPlacement.js +13 -0
  82. package/cjs/components/Select/utils/getPlacement.js.map +1 -0
  83. package/cjs/components/Select/utils/getView.js +2 -2
  84. package/cjs/components/Select/utils/getView.js.map +1 -1
  85. package/cjs/components/Slider/Slider.css +21 -22
  86. package/cjs/components/Slider/components/Double/Double.css +21 -22
  87. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +21 -22
  88. package/cjs/components/Steps/Steps.css +10 -10
  89. package/cjs/components/Steps/Steps.js +21 -14
  90. package/cjs/components/Steps/Steps.js.map +1 -1
  91. package/cjs/components/Steps/Steps.styles.js +1 -1
  92. package/cjs/components/Steps/Steps.styles.js.map +1 -1
  93. package/cjs/components/Steps/{Steps.styles_1xmqxqu.css → Steps.styles_wa45kj.css} +1 -1
  94. package/cjs/components/Steps/Steps.tokens.js +1 -0
  95. package/cjs/components/Steps/Steps.tokens.js.map +1 -1
  96. package/cjs/components/Steps/ui/StepItem/StepItem.css +9 -9
  97. package/cjs/components/Steps/ui/StepItem/StepItem.js +32 -8
  98. package/cjs/components/Steps/ui/StepItem/StepItem.js.map +1 -1
  99. package/cjs/components/Steps/ui/StepItem/StepItem.styles.js +6 -6
  100. package/cjs/components/Steps/ui/StepItem/StepItem.styles.js.map +1 -1
  101. package/cjs/components/Steps/ui/StepItem/StepItem.styles_acxstj.css +9 -0
  102. package/cjs/components/TextField/TextField.js +11 -2
  103. package/cjs/components/TextField/TextField.js.map +1 -1
  104. package/cjs/components/TextField/TextField.styles.js +14 -22
  105. package/cjs/components/TextField/TextField.styles.js.map +1 -1
  106. package/{es/components/TextField/TextField.styles_grgg7q.css → cjs/components/TextField/TextField.styles_j7dqpn.css} +6 -7
  107. package/cjs/components/TextField/TextField.tokens.js +2 -1
  108. package/cjs/components/TextField/TextField.tokens.js.map +1 -1
  109. package/cjs/components/TextField/ui/Hint/Hint.css +20 -21
  110. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  111. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js.map +1 -1
  112. package/cjs/components/TextField/variations/_clear/base.js +1 -1
  113. package/cjs/components/TextField/variations/_clear/{base_1i91sjp.css → base_1396md2.css} +1 -1
  114. package/cjs/components/TextField/variations/_label-placement/base.js +1 -1
  115. package/cjs/components/TextField/variations/_label-placement/base_gttvto.css +1 -0
  116. package/cjs/components/TextField/variations/_read-only/base.js +1 -1
  117. package/cjs/components/TextField/variations/_read-only/{base_17ypmu7.css → base_1jvcf9a.css} +1 -1
  118. package/cjs/components/TextField/variations/_size/base.js +1 -1
  119. package/cjs/components/TextField/variations/_size/{base_1xdmaqh.css → base_1tei47x.css} +1 -1
  120. package/cjs/components/TextField/variations/_view/base.js +1 -1
  121. package/cjs/components/TextField/variations/_view/{base_qhyte8.css → base_8ogww5.css} +1 -1
  122. package/cjs/index.css +57 -76
  123. package/cjs/index.js +2 -0
  124. package/cjs/index.js.map +1 -1
  125. package/cjs/utils/fixedForwardRef.js +12 -0
  126. package/cjs/utils/fixedForwardRef.js.map +1 -0
  127. package/cjs/utils/index.js.map +1 -1
  128. package/emotion/cjs/components/Cell/Cell.js +3 -1
  129. package/emotion/cjs/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  130. package/emotion/cjs/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  131. package/emotion/cjs/components/Chip/Chip.js +3 -1
  132. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +0 -1
  133. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  134. package/emotion/cjs/components/Combobox/ComboboxNew/FloatingPopover.js +19 -5
  135. package/emotion/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  136. package/emotion/cjs/components/Modal/Modal.js +12 -24
  137. package/emotion/cjs/components/Modal/Modal.template-doc.mdx +0 -47
  138. package/emotion/cjs/components/Modal/Modal.tokens.js +1 -5
  139. package/emotion/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +3 -3
  140. package/emotion/cjs/components/Select/FloatingPopover.js +91 -0
  141. package/emotion/cjs/components/Select/Select.js +177 -136
  142. package/emotion/cjs/components/Select/Select.styles.js +13 -31
  143. package/emotion/cjs/components/Select/Select.tokens.js +125 -60
  144. package/emotion/cjs/components/Select/hooks/useKeyboardNavigation.js +19 -73
  145. package/emotion/cjs/components/Select/hooks/usePathMaps.js +4 -1
  146. package/emotion/cjs/components/Select/reducers/index.js +0 -11
  147. package/emotion/cjs/components/Select/ui/Inner/Inner.js +9 -9
  148. package/emotion/cjs/components/Select/ui/Inner/ui/Item/Item.js +19 -12
  149. package/emotion/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js +27 -50
  150. package/emotion/cjs/components/Select/ui/Target/Target.js +45 -18
  151. package/emotion/cjs/components/Select/ui/Target/ui/Button/Button.js +14 -19
  152. package/emotion/cjs/components/Select/ui/Target/ui/Button/Button.styles.js +6 -6
  153. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +88 -99
  154. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +27 -74
  155. package/emotion/cjs/components/Select/utils/getButtonLabel.js +1 -1
  156. package/emotion/cjs/components/Select/utils/getFallbackPlacements.js +14 -0
  157. package/emotion/cjs/components/Select/utils/getItemId.js +9 -0
  158. package/emotion/cjs/components/Select/utils/getPlacement.js +12 -0
  159. package/emotion/cjs/components/Select/utils/getView.js +2 -2
  160. package/emotion/cjs/components/Select/utils/index.js +22 -1
  161. package/emotion/cjs/components/Steps/Steps.js +23 -14
  162. package/emotion/cjs/components/Steps/Steps.styles.js +1 -1
  163. package/emotion/cjs/components/Steps/Steps.tokens.js +1 -0
  164. package/emotion/cjs/components/Steps/ui/StepItem/StepItem.js +32 -8
  165. package/emotion/cjs/components/Steps/ui/StepItem/StepItem.styles.js +22 -11
  166. package/emotion/cjs/components/TextField/TextField.js +12 -3
  167. package/emotion/cjs/components/TextField/TextField.styles.js +36 -40
  168. package/emotion/cjs/components/TextField/TextField.tokens.js +2 -1
  169. package/emotion/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  170. package/emotion/cjs/examples/plasma_b2c/components/Combobox/Combobox.config.js +12 -12
  171. package/emotion/cjs/examples/plasma_b2c/components/Modal/Modal.config.js +1 -1
  172. package/emotion/cjs/examples/plasma_b2c/components/Modal/Modal.stories.tsx +1 -90
  173. package/emotion/cjs/examples/plasma_b2c/components/Select/Select.config.js +28 -20
  174. package/emotion/cjs/examples/plasma_b2c/components/Select/Select.stories.tsx +47 -40
  175. package/emotion/cjs/examples/plasma_b2c/components/Steps/Steps.config.js +5 -5
  176. package/emotion/cjs/examples/plasma_b2c/components/Steps/Steps.stories.tsx +1 -1
  177. package/emotion/cjs/examples/plasma_web/components/Modal/Modal.config.js +1 -1
  178. package/emotion/cjs/examples/plasma_web/components/Modal/Modal.stories.tsx +1 -90
  179. package/emotion/cjs/examples/plasma_web/components/Select/Select.config.js +28 -20
  180. package/emotion/cjs/examples/plasma_web/components/Select/Select.stories.tsx +47 -40
  181. package/emotion/cjs/examples/plasma_web/components/Steps/Steps.config.js +5 -5
  182. package/emotion/cjs/examples/plasma_web/components/Steps/Steps.stories.tsx +1 -1
  183. package/emotion/cjs/index.js +11 -0
  184. package/emotion/cjs/types/DistributiveOmit.js +5 -0
  185. package/emotion/cjs/types/DistributivePick.js +5 -0
  186. package/emotion/cjs/utils/fixedForwardRef.js +11 -0
  187. package/emotion/cjs/utils/index.js +9 -1
  188. package/emotion/es/components/Cell/Cell.js +3 -1
  189. package/emotion/es/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  190. package/emotion/es/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  191. package/emotion/es/components/Chip/Chip.js +3 -1
  192. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +0 -1
  193. package/emotion/es/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  194. package/emotion/es/components/Combobox/ComboboxNew/FloatingPopover.js +18 -4
  195. package/emotion/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  196. package/emotion/es/components/Modal/Modal.js +12 -24
  197. package/emotion/es/components/Modal/Modal.template-doc.mdx +0 -47
  198. package/emotion/es/components/Modal/Modal.tokens.js +1 -5
  199. package/emotion/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +3 -3
  200. package/emotion/es/components/Select/FloatingPopover.js +84 -0
  201. package/emotion/es/components/Select/Select.js +182 -141
  202. package/emotion/es/components/Select/Select.styles.js +12 -30
  203. package/emotion/es/components/Select/Select.tokens.js +125 -60
  204. package/emotion/es/components/Select/hooks/useKeyboardNavigation.js +18 -72
  205. package/emotion/es/components/Select/hooks/usePathMaps.js +4 -1
  206. package/emotion/es/components/Select/reducers/index.js +1 -2
  207. package/emotion/es/components/Select/ui/Inner/Inner.js +10 -10
  208. package/emotion/es/components/Select/ui/Inner/ui/Item/Item.js +22 -15
  209. package/emotion/es/components/Select/ui/Inner/ui/Item/Item.styles.js +26 -49
  210. package/emotion/es/components/Select/ui/Target/Target.js +42 -17
  211. package/emotion/es/components/Select/ui/Target/ui/Button/Button.js +12 -19
  212. package/emotion/es/components/Select/ui/Target/ui/Button/Button.styles.js +6 -6
  213. package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +86 -99
  214. package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +27 -74
  215. package/emotion/es/components/Select/utils/getButtonLabel.js +1 -1
  216. package/emotion/es/components/Select/utils/getFallbackPlacements.js +8 -0
  217. package/emotion/es/components/Select/utils/getItemId.js +3 -0
  218. package/emotion/es/components/Select/utils/getPlacement.js +6 -0
  219. package/emotion/es/components/Select/utils/getView.js +2 -2
  220. package/emotion/es/components/Select/utils/index.js +4 -1
  221. package/emotion/es/components/Steps/Steps.js +24 -15
  222. package/emotion/es/components/Steps/Steps.styles.js +1 -1
  223. package/emotion/es/components/Steps/Steps.tokens.js +1 -0
  224. package/emotion/es/components/Steps/ui/StepItem/StepItem.js +32 -8
  225. package/emotion/es/components/Steps/ui/StepItem/StepItem.styles.js +22 -11
  226. package/emotion/es/components/TextField/TextField.js +12 -3
  227. package/emotion/es/components/TextField/TextField.styles.js +36 -40
  228. package/emotion/es/components/TextField/TextField.tokens.js +2 -1
  229. package/emotion/es/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  230. package/emotion/es/examples/plasma_b2c/components/Combobox/Combobox.config.js +12 -12
  231. package/emotion/es/examples/plasma_b2c/components/Modal/Modal.config.js +1 -1
  232. package/emotion/es/examples/plasma_b2c/components/Modal/Modal.stories.tsx +1 -90
  233. package/emotion/es/examples/plasma_b2c/components/Select/Select.config.js +29 -21
  234. package/emotion/es/examples/plasma_b2c/components/Select/Select.stories.tsx +47 -40
  235. package/emotion/es/examples/plasma_b2c/components/Steps/Steps.config.js +5 -5
  236. package/emotion/es/examples/plasma_b2c/components/Steps/Steps.stories.tsx +1 -1
  237. package/emotion/es/examples/plasma_web/components/Modal/Modal.config.js +1 -1
  238. package/emotion/es/examples/plasma_web/components/Modal/Modal.stories.tsx +1 -90
  239. package/emotion/es/examples/plasma_web/components/Select/Select.config.js +29 -21
  240. package/emotion/es/examples/plasma_web/components/Select/Select.stories.tsx +47 -40
  241. package/emotion/es/examples/plasma_web/components/Steps/Steps.config.js +5 -5
  242. package/emotion/es/examples/plasma_web/components/Steps/Steps.stories.tsx +1 -1
  243. package/emotion/es/index.js +1 -0
  244. package/emotion/es/types/DistributiveOmit.js +1 -0
  245. package/emotion/es/types/DistributivePick.js +1 -0
  246. package/emotion/es/utils/fixedForwardRef.js +4 -0
  247. package/emotion/es/utils/index.js +2 -1
  248. package/es/components/Autocomplete/Autocomplete.css +21 -22
  249. package/es/components/Cell/Cell.js +3 -1
  250. package/es/components/Cell/Cell.js.map +1 -1
  251. package/es/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  252. package/es/components/Cell/ui/CellTextbox/CellTextbox.js.map +1 -1
  253. package/es/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  254. package/es/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js.map +1 -1
  255. package/es/components/Chip/Chip.js +3 -1
  256. package/es/components/Chip/Chip.js.map +1 -1
  257. package/es/components/Combobox/ComboboxNew/Combobox.css +21 -22
  258. package/es/components/Combobox/ComboboxNew/Combobox.js +0 -1
  259. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  260. package/es/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  261. package/es/components/Combobox/ComboboxNew/Combobox.tokens.js.map +1 -1
  262. package/es/components/Combobox/ComboboxNew/FloatingPopover.js +18 -4
  263. package/es/components/Combobox/ComboboxNew/FloatingPopover.js.map +1 -1
  264. package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  265. package/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  266. package/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js.map +1 -1
  267. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.css +21 -22
  268. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.css +21 -22
  269. package/es/components/DatePicker/RangeDate/RangeDate.css +21 -22
  270. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +21 -22
  271. package/es/components/DatePicker/SingleDate/SingleDate.css +21 -22
  272. package/es/components/Dropdown/FloatingPopover.js.map +1 -1
  273. package/es/components/Modal/Modal.css +0 -6
  274. package/es/components/Modal/Modal.js +13 -25
  275. package/es/components/Modal/Modal.js.map +1 -1
  276. package/es/components/Modal/Modal.tokens.js +1 -5
  277. package/es/components/Modal/Modal.tokens.js.map +1 -1
  278. package/es/components/Pagination/Pagination.css +86 -37
  279. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +86 -37
  280. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  281. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js.map +1 -1
  282. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles_10zfeps.css +3 -0
  283. package/es/components/Range/Range.css +21 -22
  284. package/es/components/Select/FloatingPopover.js +83 -0
  285. package/es/components/Select/FloatingPopover.js.map +1 -0
  286. package/es/components/Select/Select.css +83 -34
  287. package/es/components/Select/Select.js +182 -142
  288. package/es/components/Select/Select.js.map +1 -1
  289. package/es/components/Select/Select.styles.js +18 -48
  290. package/es/components/Select/Select.styles.js.map +1 -1
  291. package/es/components/Select/Select.styles_1p5c9p3.css +2 -0
  292. package/es/components/Select/Select.tokens.js +123 -78
  293. package/es/components/Select/Select.tokens.js.map +1 -1
  294. package/es/components/Select/hooks/useKeyboardNavigation.js +19 -73
  295. package/es/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
  296. package/es/components/Select/hooks/usePathMaps.js +4 -1
  297. package/es/components/Select/hooks/usePathMaps.js.map +1 -1
  298. package/es/components/Select/ui/Inner/Inner.css +83 -34
  299. package/es/components/Select/ui/Inner/Inner.js +10 -10
  300. package/es/components/Select/ui/Inner/Inner.js.map +1 -1
  301. package/es/components/Select/ui/Inner/ui/Item/Item.css +83 -34
  302. package/es/components/Select/ui/Inner/ui/Item/Item.js +22 -14
  303. package/es/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  304. package/es/components/Select/ui/Inner/ui/Item/Item.styles.js +33 -50
  305. package/es/components/Select/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  306. package/es/components/Select/ui/Inner/ui/Item/Item.styles_1x4bzlm.css +9 -0
  307. package/es/components/Select/ui/Target/Target.css +58 -17
  308. package/es/components/Select/ui/Target/Target.js +42 -17
  309. package/es/components/Select/ui/Target/Target.js.map +1 -1
  310. package/es/components/Select/ui/Target/ui/Button/Button.css +5 -5
  311. package/es/components/Select/ui/Target/ui/Button/Button.js +12 -18
  312. package/es/components/Select/ui/Target/ui/Button/Button.js.map +1 -1
  313. package/es/components/Select/ui/Target/ui/Button/Button.styles.js +1 -1
  314. package/es/components/Select/ui/Target/ui/Button/Button.styles.js.map +1 -1
  315. package/es/components/Select/ui/Target/ui/Button/Button.styles_10g64me.css +5 -0
  316. package/es/components/Select/ui/Target/ui/Textfield/Textfield.css +53 -38
  317. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +86 -99
  318. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  319. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +39 -95
  320. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  321. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles_q4kc1p.css +3 -0
  322. package/es/components/Select/utils/getButtonLabel.js +1 -1
  323. package/es/components/Select/utils/getButtonLabel.js.map +1 -1
  324. package/es/components/Select/utils/getFallbackPlacements.js +11 -0
  325. package/es/components/Select/utils/getFallbackPlacements.js.map +1 -0
  326. package/es/components/Select/utils/getItemId.js +6 -0
  327. package/es/components/Select/utils/getItemId.js.map +1 -0
  328. package/es/components/Select/utils/getPlacement.js +9 -0
  329. package/es/components/Select/utils/getPlacement.js.map +1 -0
  330. package/es/components/Select/utils/getView.js +2 -2
  331. package/es/components/Select/utils/getView.js.map +1 -1
  332. package/es/components/Slider/Slider.css +21 -22
  333. package/es/components/Slider/components/Double/Double.css +21 -22
  334. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +21 -22
  335. package/es/components/Steps/Steps.css +10 -10
  336. package/es/components/Steps/Steps.js +23 -16
  337. package/es/components/Steps/Steps.js.map +1 -1
  338. package/es/components/Steps/Steps.styles.js +1 -1
  339. package/es/components/Steps/Steps.styles.js.map +1 -1
  340. package/es/components/Steps/{Steps.styles_1xmqxqu.css → Steps.styles_wa45kj.css} +1 -1
  341. package/es/components/Steps/Steps.tokens.js +1 -0
  342. package/es/components/Steps/Steps.tokens.js.map +1 -1
  343. package/es/components/Steps/ui/StepItem/StepItem.css +9 -9
  344. package/es/components/Steps/ui/StepItem/StepItem.js +33 -9
  345. package/es/components/Steps/ui/StepItem/StepItem.js.map +1 -1
  346. package/es/components/Steps/ui/StepItem/StepItem.styles.js +6 -6
  347. package/es/components/Steps/ui/StepItem/StepItem.styles.js.map +1 -1
  348. package/es/components/Steps/ui/StepItem/StepItem.styles_acxstj.css +9 -0
  349. package/es/components/TextField/TextField.js +11 -2
  350. package/es/components/TextField/TextField.js.map +1 -1
  351. package/es/components/TextField/TextField.styles.js +14 -22
  352. package/es/components/TextField/TextField.styles.js.map +1 -1
  353. package/{cjs/components/TextField/TextField.styles_grgg7q.css → es/components/TextField/TextField.styles_j7dqpn.css} +6 -7
  354. package/es/components/TextField/TextField.tokens.js +2 -1
  355. package/es/components/TextField/TextField.tokens.js.map +1 -1
  356. package/es/components/TextField/ui/Hint/Hint.css +20 -21
  357. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  358. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.js.map +1 -1
  359. package/es/components/TextField/variations/_clear/base.js +1 -1
  360. package/es/components/TextField/variations/_clear/{base_1i91sjp.css → base_1396md2.css} +1 -1
  361. package/es/components/TextField/variations/_label-placement/base.js +1 -1
  362. package/es/components/TextField/variations/_label-placement/base_gttvto.css +1 -0
  363. package/es/components/TextField/variations/_read-only/base.js +1 -1
  364. package/es/components/TextField/variations/_read-only/{base_17ypmu7.css → base_1jvcf9a.css} +1 -1
  365. package/es/components/TextField/variations/_size/base.js +1 -1
  366. package/es/components/TextField/variations/_size/{base_1xdmaqh.css → base_1tei47x.css} +1 -1
  367. package/es/components/TextField/variations/_view/base.js +1 -1
  368. package/es/components/TextField/variations/_view/{base_qhyte8.css → base_8ogww5.css} +1 -1
  369. package/es/index.css +57 -76
  370. package/es/index.js +1 -0
  371. package/es/index.js.map +1 -1
  372. package/es/utils/fixedForwardRef.js +8 -0
  373. package/es/utils/fixedForwardRef.js.map +1 -0
  374. package/es/utils/index.js.map +1 -1
  375. package/package.json +5 -5
  376. package/styled-components/cjs/components/Cell/Cell.js +3 -1
  377. package/styled-components/cjs/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  378. package/styled-components/cjs/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  379. package/styled-components/cjs/components/Chip/Chip.js +3 -1
  380. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +0 -1
  381. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  382. package/styled-components/cjs/components/Combobox/ComboboxNew/FloatingPopover.js +19 -5
  383. package/styled-components/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  384. package/styled-components/cjs/components/Modal/Modal.js +12 -24
  385. package/styled-components/cjs/components/Modal/Modal.template-doc.mdx +0 -47
  386. package/styled-components/cjs/components/Modal/Modal.tokens.js +1 -5
  387. package/styled-components/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  388. package/styled-components/cjs/components/Select/FloatingPopover.js +91 -0
  389. package/styled-components/cjs/components/Select/Select.js +177 -136
  390. package/styled-components/cjs/components/Select/Select.styles.js +12 -27
  391. package/styled-components/cjs/components/Select/Select.tokens.js +125 -60
  392. package/styled-components/cjs/components/Select/hooks/useKeyboardNavigation.js +19 -73
  393. package/styled-components/cjs/components/Select/hooks/usePathMaps.js +4 -1
  394. package/styled-components/cjs/components/Select/reducers/index.js +0 -11
  395. package/styled-components/cjs/components/Select/ui/Inner/Inner.js +9 -9
  396. package/styled-components/cjs/components/Select/ui/Inner/ui/Item/Item.js +19 -12
  397. package/styled-components/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js +20 -26
  398. package/styled-components/cjs/components/Select/ui/Target/Target.js +45 -18
  399. package/styled-components/cjs/components/Select/ui/Target/ui/Button/Button.js +14 -19
  400. package/styled-components/cjs/components/Select/ui/Target/ui/Button/Button.styles.js +3 -3
  401. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +88 -99
  402. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +23 -61
  403. package/styled-components/cjs/components/Select/utils/getButtonLabel.js +1 -1
  404. package/styled-components/cjs/components/Select/utils/getFallbackPlacements.js +14 -0
  405. package/styled-components/cjs/components/Select/utils/getItemId.js +9 -0
  406. package/styled-components/cjs/components/Select/utils/getPlacement.js +12 -0
  407. package/styled-components/cjs/components/Select/utils/getView.js +2 -2
  408. package/styled-components/cjs/components/Select/utils/index.js +22 -1
  409. package/styled-components/cjs/components/Steps/Steps.js +23 -14
  410. package/styled-components/cjs/components/Steps/Steps.styles.js +1 -1
  411. package/styled-components/cjs/components/Steps/Steps.tokens.js +1 -0
  412. package/styled-components/cjs/components/Steps/ui/StepItem/StepItem.js +32 -8
  413. package/styled-components/cjs/components/Steps/ui/StepItem/StepItem.styles.js +17 -6
  414. package/styled-components/cjs/components/TextField/TextField.js +11 -2
  415. package/styled-components/cjs/components/TextField/TextField.styles.js +12 -15
  416. package/styled-components/cjs/components/TextField/TextField.tokens.js +2 -1
  417. package/styled-components/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  418. package/styled-components/cjs/examples/plasma_b2c/components/Combobox/Combobox.config.js +1 -1
  419. package/styled-components/cjs/examples/plasma_b2c/components/Modal/Modal.config.js +1 -1
  420. package/styled-components/cjs/examples/plasma_b2c/components/Modal/Modal.stories.tsx +1 -90
  421. package/styled-components/cjs/examples/plasma_b2c/components/Select/Select.config.js +28 -20
  422. package/styled-components/cjs/examples/plasma_b2c/components/Select/Select.stories.tsx +47 -40
  423. package/styled-components/cjs/examples/plasma_b2c/components/Steps/Steps.config.js +1 -1
  424. package/styled-components/cjs/examples/plasma_b2c/components/Steps/Steps.stories.tsx +1 -1
  425. package/styled-components/cjs/examples/plasma_web/components/Modal/Modal.config.js +1 -1
  426. package/styled-components/cjs/examples/plasma_web/components/Modal/Modal.stories.tsx +1 -90
  427. package/styled-components/cjs/examples/plasma_web/components/Select/Select.config.js +28 -20
  428. package/styled-components/cjs/examples/plasma_web/components/Select/Select.stories.tsx +47 -40
  429. package/styled-components/cjs/examples/plasma_web/components/Steps/Steps.config.js +1 -1
  430. package/styled-components/cjs/examples/plasma_web/components/Steps/Steps.stories.tsx +1 -1
  431. package/styled-components/cjs/index.js +11 -0
  432. package/styled-components/cjs/types/DistributiveOmit.js +5 -0
  433. package/styled-components/cjs/types/DistributivePick.js +5 -0
  434. package/styled-components/cjs/utils/fixedForwardRef.js +11 -0
  435. package/styled-components/cjs/utils/index.js +9 -1
  436. package/styled-components/es/components/Cell/Cell.js +3 -1
  437. package/styled-components/es/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  438. package/styled-components/es/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  439. package/styled-components/es/components/Chip/Chip.js +3 -1
  440. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +0 -1
  441. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  442. package/styled-components/es/components/Combobox/ComboboxNew/FloatingPopover.js +18 -4
  443. package/styled-components/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  444. package/styled-components/es/components/Modal/Modal.js +12 -24
  445. package/styled-components/es/components/Modal/Modal.template-doc.mdx +0 -47
  446. package/styled-components/es/components/Modal/Modal.tokens.js +1 -5
  447. package/styled-components/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  448. package/styled-components/es/components/Select/FloatingPopover.js +84 -0
  449. package/styled-components/es/components/Select/Select.js +182 -141
  450. package/styled-components/es/components/Select/Select.styles.js +11 -26
  451. package/styled-components/es/components/Select/Select.tokens.js +125 -60
  452. package/styled-components/es/components/Select/hooks/useKeyboardNavigation.js +18 -72
  453. package/styled-components/es/components/Select/hooks/usePathMaps.js +4 -1
  454. package/styled-components/es/components/Select/reducers/index.js +1 -2
  455. package/styled-components/es/components/Select/ui/Inner/Inner.js +10 -10
  456. package/styled-components/es/components/Select/ui/Inner/ui/Item/Item.js +22 -15
  457. package/styled-components/es/components/Select/ui/Inner/ui/Item/Item.styles.js +19 -25
  458. package/styled-components/es/components/Select/ui/Target/Target.js +42 -17
  459. package/styled-components/es/components/Select/ui/Target/ui/Button/Button.js +12 -19
  460. package/styled-components/es/components/Select/ui/Target/ui/Button/Button.styles.js +3 -3
  461. package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +86 -99
  462. package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +23 -61
  463. package/styled-components/es/components/Select/utils/getButtonLabel.js +1 -1
  464. package/styled-components/es/components/Select/utils/getFallbackPlacements.js +8 -0
  465. package/styled-components/es/components/Select/utils/getItemId.js +3 -0
  466. package/styled-components/es/components/Select/utils/getPlacement.js +6 -0
  467. package/styled-components/es/components/Select/utils/getView.js +2 -2
  468. package/styled-components/es/components/Select/utils/index.js +4 -1
  469. package/styled-components/es/components/Steps/Steps.js +24 -15
  470. package/styled-components/es/components/Steps/Steps.styles.js +1 -1
  471. package/styled-components/es/components/Steps/Steps.tokens.js +1 -0
  472. package/styled-components/es/components/Steps/ui/StepItem/StepItem.js +32 -8
  473. package/styled-components/es/components/Steps/ui/StepItem/StepItem.styles.js +17 -6
  474. package/styled-components/es/components/TextField/TextField.js +11 -2
  475. package/styled-components/es/components/TextField/TextField.styles.js +12 -15
  476. package/styled-components/es/components/TextField/TextField.tokens.js +2 -1
  477. package/styled-components/es/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  478. package/styled-components/es/examples/plasma_b2c/components/Combobox/Combobox.config.js +1 -1
  479. package/styled-components/es/examples/plasma_b2c/components/Modal/Modal.config.js +1 -1
  480. package/styled-components/es/examples/plasma_b2c/components/Modal/Modal.stories.tsx +1 -90
  481. package/styled-components/es/examples/plasma_b2c/components/Select/Select.config.js +29 -21
  482. package/styled-components/es/examples/plasma_b2c/components/Select/Select.stories.tsx +47 -40
  483. package/styled-components/es/examples/plasma_b2c/components/Steps/Steps.config.js +1 -1
  484. package/styled-components/es/examples/plasma_b2c/components/Steps/Steps.stories.tsx +1 -1
  485. package/styled-components/es/examples/plasma_web/components/Modal/Modal.config.js +1 -1
  486. package/styled-components/es/examples/plasma_web/components/Modal/Modal.stories.tsx +1 -90
  487. package/styled-components/es/examples/plasma_web/components/Select/Select.config.js +29 -21
  488. package/styled-components/es/examples/plasma_web/components/Select/Select.stories.tsx +47 -40
  489. package/styled-components/es/examples/plasma_web/components/Steps/Steps.config.js +1 -1
  490. package/styled-components/es/examples/plasma_web/components/Steps/Steps.stories.tsx +1 -1
  491. package/styled-components/es/index.js +1 -0
  492. package/styled-components/es/types/DistributiveOmit.js +1 -0
  493. package/styled-components/es/types/DistributivePick.js +1 -0
  494. package/styled-components/es/utils/fixedForwardRef.js +4 -0
  495. package/styled-components/es/utils/index.js +2 -1
  496. package/types/components/Attach/ui/Button/Button.styles.d.ts +2 -2
  497. package/types/components/Attach/ui/IconButton/IconButton.styles.d.ts +4 -4
  498. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts +16 -16
  499. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -1
  500. package/types/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.d.ts +2 -2
  501. package/types/components/Cell/Cell.d.ts.map +1 -1
  502. package/types/components/Cell/ui/CellTextbox/CellTextbox.d.ts.map +1 -1
  503. package/types/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.d.ts.map +1 -1
  504. package/types/components/Chip/Chip.d.ts.map +1 -1
  505. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  506. package/types/components/Combobox/ComboboxNew/Combobox.tokens.d.ts +0 -1
  507. package/types/components/Combobox/ComboboxNew/Combobox.tokens.d.ts.map +1 -1
  508. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +4 -3
  509. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
  510. package/types/components/Combobox/ComboboxNew/FloatingPopover.d.ts.map +1 -1
  511. package/types/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.d.ts +1 -3
  512. package/types/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.d.ts.map +1 -1
  513. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts +16 -16
  514. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts.map +1 -1
  515. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts +16 -16
  516. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts.map +1 -1
  517. package/types/components/EmptyState/EmptyState.styles.d.ts +2 -2
  518. package/types/components/Modal/Modal.d.ts.map +1 -1
  519. package/types/components/Modal/Modal.tokens.d.ts +0 -4
  520. package/types/components/Modal/Modal.tokens.d.ts.map +1 -1
  521. package/types/components/Modal/Modal.types.d.ts +1 -21
  522. package/types/components/Modal/Modal.types.d.ts.map +1 -1
  523. package/types/components/Modal/index.d.ts +1 -1
  524. package/types/components/Modal/index.d.ts.map +1 -1
  525. package/types/components/Notification/Notification.styles.d.ts +2 -2
  526. package/types/components/NumberInput/ui/ActionButton/ActionButton.styles.d.ts +2 -2
  527. package/types/components/Pagination/Pagination.styles.d.ts +4 -4
  528. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +42 -42
  529. package/types/components/Panel/ui/PanelHeader/PanelHeader.styles.d.ts +2 -2
  530. package/types/components/Range/Range.styles.d.ts +16 -16
  531. package/types/components/Range/Range.styles.d.ts.map +1 -1
  532. package/types/components/Select/FloatingPopover.d.ts +5 -0
  533. package/types/components/Select/FloatingPopover.d.ts.map +1 -0
  534. package/types/components/Select/Select.d.ts +5 -11
  535. package/types/components/Select/Select.d.ts.map +1 -1
  536. package/types/components/Select/Select.styles.d.ts +0 -9
  537. package/types/components/Select/Select.styles.d.ts.map +1 -1
  538. package/types/components/Select/Select.tokens.d.ts +121 -58
  539. package/types/components/Select/Select.tokens.d.ts.map +1 -1
  540. package/types/components/Select/Select.types.d.ts +42 -21
  541. package/types/components/Select/Select.types.d.ts.map +1 -1
  542. package/types/components/Select/hooks/useKeyboardNavigation.d.ts +5 -11
  543. package/types/components/Select/hooks/useKeyboardNavigation.d.ts.map +1 -1
  544. package/types/components/Select/hooks/usePathMaps.d.ts +2 -1
  545. package/types/components/Select/hooks/usePathMaps.d.ts.map +1 -1
  546. package/types/components/Select/index.d.ts +1 -1
  547. package/types/components/Select/index.d.ts.map +1 -1
  548. package/types/components/Select/reducers/index.d.ts +0 -1
  549. package/types/components/Select/reducers/index.d.ts.map +1 -1
  550. package/types/components/Select/ui/Inner/Inner.d.ts.map +1 -1
  551. package/types/components/Select/ui/Inner/ui/Item/Item.d.ts.map +1 -1
  552. package/types/components/Select/ui/Inner/ui/Item/Item.styles.d.ts +32 -2
  553. package/types/components/Select/ui/Inner/ui/Item/Item.styles.d.ts.map +1 -1
  554. package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts +9 -0
  555. package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts.map +1 -1
  556. package/types/components/Select/ui/Target/Target.d.ts +14 -2
  557. package/types/components/Select/ui/Target/Target.d.ts.map +1 -1
  558. package/types/components/Select/ui/Target/Target.types.d.ts +10 -9
  559. package/types/components/Select/ui/Target/Target.types.d.ts.map +1 -1
  560. package/types/components/Select/ui/Target/ui/Button/Button.d.ts +1 -1
  561. package/types/components/Select/ui/Target/ui/Button/Button.d.ts.map +1 -1
  562. package/types/components/Select/ui/Target/ui/Button/Button.styles.d.ts +2 -2
  563. package/types/components/Select/ui/Target/ui/Button/Button.types.d.ts +1 -1
  564. package/types/components/Select/ui/Target/ui/Button/Button.types.d.ts.map +1 -1
  565. package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts +1 -1
  566. package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts.map +1 -1
  567. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts +628 -60
  568. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts.map +1 -1
  569. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts +1 -4
  570. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts.map +1 -1
  571. package/types/components/Select/utils/getFallbackPlacements.d.ts +4 -0
  572. package/types/components/Select/utils/getFallbackPlacements.d.ts.map +1 -0
  573. package/types/components/Select/utils/getItemId.d.ts +2 -0
  574. package/types/components/Select/utils/getItemId.d.ts.map +1 -0
  575. package/types/components/Select/utils/getPlacement.d.ts +4 -0
  576. package/types/components/Select/utils/getPlacement.d.ts.map +1 -0
  577. package/types/components/Select/utils/getView.d.ts +1 -1
  578. package/types/components/Select/utils/getView.d.ts.map +1 -1
  579. package/types/components/Select/utils/index.d.ts +3 -0
  580. package/types/components/Select/utils/index.d.ts.map +1 -1
  581. package/types/components/Slider/components/Double/Double.styles.d.ts +16 -16
  582. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  583. package/types/components/Steps/Steps.d.ts.map +1 -1
  584. package/types/components/Steps/Steps.styles.d.ts.map +1 -1
  585. package/types/components/Steps/Steps.tokens.d.ts +1 -0
  586. package/types/components/Steps/Steps.tokens.d.ts.map +1 -1
  587. package/types/components/Steps/ui/StepItem/StepItem.d.ts.map +1 -1
  588. package/types/components/Steps/ui/StepItem/StepItem.styles.d.ts +2 -2
  589. package/types/components/Steps/ui/StepItem/StepItem.styles.d.ts.map +1 -1
  590. package/types/components/TextField/TextField.d.ts.map +1 -1
  591. package/types/components/TextField/TextField.styles.d.ts +1 -3
  592. package/types/components/TextField/TextField.styles.d.ts.map +1 -1
  593. package/types/components/TextField/TextField.tokens.d.ts +1 -0
  594. package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
  595. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.d.ts +3 -1
  596. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.d.ts.map +1 -1
  597. package/types/components/Toast/Toast.styles.d.ts +2 -2
  598. package/types/components/Toast/utils.d.ts +2 -2
  599. package/types/examples/plasma_b2c/components/Attach/Attach.d.ts +8 -8
  600. package/types/examples/plasma_b2c/components/Button/Button.d.ts +2 -2
  601. package/types/examples/plasma_b2c/components/Combobox/Combobox.d.ts +24 -24
  602. package/types/examples/plasma_b2c/components/IconButton/IconButton.d.ts +2 -2
  603. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts +16 -16
  604. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts.map +1 -1
  605. package/types/examples/plasma_b2c/components/Modal/Modal.config.d.ts.map +1 -1
  606. package/types/examples/plasma_b2c/components/Modal/Modal.d.ts +1 -7
  607. package/types/examples/plasma_b2c/components/Modal/Modal.d.ts.map +1 -1
  608. package/types/examples/plasma_b2c/components/Radiobox/Radiobox.d.ts +1 -1
  609. package/types/examples/plasma_b2c/components/Radiobox/Radiobox.d.ts.map +1 -1
  610. package/types/examples/plasma_b2c/components/Select/Select.config.d.ts +15 -7
  611. package/types/examples/plasma_b2c/components/Select/Select.config.d.ts.map +1 -1
  612. package/types/examples/plasma_b2c/components/Select/Select.d.ts +55 -48
  613. package/types/examples/plasma_b2c/components/Select/Select.d.ts.map +1 -1
  614. package/types/examples/plasma_b2c/components/Steps/Steps.config.d.ts.map +1 -1
  615. package/types/examples/plasma_b2c/components/TextArea/TextArea.d.ts +16 -16
  616. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +16 -16
  617. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
  618. package/types/examples/plasma_web/components/Attach/Attach.d.ts +8 -8
  619. package/types/examples/plasma_web/components/Button/Button.d.ts +2 -2
  620. package/types/examples/plasma_web/components/Combobox/Combobox.d.ts +24 -24
  621. package/types/examples/plasma_web/components/IconButton/IconButton.d.ts +2 -2
  622. package/types/examples/plasma_web/components/Mask/Mask.d.ts +16 -16
  623. package/types/examples/plasma_web/components/Mask/Mask.d.ts.map +1 -1
  624. package/types/examples/plasma_web/components/Modal/Modal.config.d.ts.map +1 -1
  625. package/types/examples/plasma_web/components/Modal/Modal.d.ts +1 -7
  626. package/types/examples/plasma_web/components/Modal/Modal.d.ts.map +1 -1
  627. package/types/examples/plasma_web/components/Radiobox/Radiobox.d.ts +1 -1
  628. package/types/examples/plasma_web/components/Radiobox/Radiobox.d.ts.map +1 -1
  629. package/types/examples/plasma_web/components/Select/Select.config.d.ts +15 -7
  630. package/types/examples/plasma_web/components/Select/Select.config.d.ts.map +1 -1
  631. package/types/examples/plasma_web/components/Select/Select.d.ts +55 -48
  632. package/types/examples/plasma_web/components/Select/Select.d.ts.map +1 -1
  633. package/types/examples/plasma_web/components/Steps/Steps.config.d.ts.map +1 -1
  634. package/types/examples/plasma_web/components/TextArea/TextArea.d.ts +16 -16
  635. package/types/examples/plasma_web/components/TextField/TextField.d.ts +16 -16
  636. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
  637. package/types/index.d.ts +1 -0
  638. package/types/index.d.ts.map +1 -1
  639. package/types/types/DistributiveOmit.d.ts +2 -0
  640. package/types/types/DistributiveOmit.d.ts.map +1 -0
  641. package/types/types/DistributivePick.d.ts +2 -0
  642. package/types/types/DistributivePick.d.ts.map +1 -0
  643. package/types/types/index.d.ts +2 -0
  644. package/types/types/index.d.ts.map +1 -1
  645. package/types/utils/fixedForwardRef.d.ts +3 -0
  646. package/types/utils/fixedForwardRef.d.ts.map +1 -0
  647. package/types/utils/index.d.ts +1 -0
  648. package/types/utils/index.d.ts.map +1 -1
  649. package/cjs/components/Modal/Modal.styles.js +0 -27
  650. package/cjs/components/Modal/Modal.styles.js.map +0 -1
  651. package/cjs/components/Modal/Modal.styles_1fjhyqd.css +0 -3
  652. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles_1fesyfv.css +0 -3
  653. package/cjs/components/Select/Select.styles_768h42.css +0 -5
  654. package/cjs/components/Select/reducers/focusedChipIndexReducer.js +0 -39
  655. package/cjs/components/Select/reducers/focusedChipIndexReducer.js.map +0 -1
  656. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles_8oe5oy.css +0 -9
  657. package/cjs/components/Select/ui/Target/ui/Button/Button.styles_lxxm4p.css +0 -5
  658. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles_1damf5p.css +0 -12
  659. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.css +0 -21
  660. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -36
  661. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js.map +0 -1
  662. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -22
  663. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js.map +0 -1
  664. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles_1a752pa.css +0 -1
  665. package/cjs/components/Select/variations/_size/base.js +0 -9
  666. package/cjs/components/Select/variations/_size/base.js.map +0 -1
  667. package/cjs/components/Select/variations/_size/base_x642ct.css +0 -1
  668. package/cjs/components/Select/variations/_view/base.js +0 -9
  669. package/cjs/components/Select/variations/_view/base.js.map +0 -1
  670. package/cjs/components/Select/variations/_view/base_x642ct.css +0 -1
  671. package/cjs/components/Steps/ui/StepItem/StepItem.styles_sp9rcd.css +0 -9
  672. package/cjs/components/TextField/variations/_label-placement/base_3domm.css +0 -1
  673. package/emotion/cjs/components/Modal/Modal.styles.js +0 -30
  674. package/emotion/cjs/components/Select/reducers/focusedChipIndexReducer.js +0 -38
  675. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -37
  676. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -22
  677. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/ui/index.js +0 -16
  678. package/emotion/cjs/components/Select/variations/_size/base.js +0 -8
  679. package/emotion/cjs/components/Select/variations/_size/tokens.json +0 -9
  680. package/emotion/cjs/components/Select/variations/_view/base.js +0 -8
  681. package/emotion/cjs/components/Select/variations/_view/tokens.json +0 -1
  682. package/emotion/es/components/Modal/Modal.styles.js +0 -23
  683. package/emotion/es/components/Select/reducers/focusedChipIndexReducer.js +0 -32
  684. package/emotion/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -28
  685. package/emotion/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -15
  686. package/emotion/es/components/Select/ui/Target/ui/Textfield/ui/index.js +0 -1
  687. package/emotion/es/components/Select/variations/_size/base.js +0 -2
  688. package/emotion/es/components/Select/variations/_size/tokens.json +0 -9
  689. package/emotion/es/components/Select/variations/_view/base.js +0 -2
  690. package/emotion/es/components/Select/variations/_view/tokens.json +0 -1
  691. package/es/components/Modal/Modal.styles.js +0 -21
  692. package/es/components/Modal/Modal.styles.js.map +0 -1
  693. package/es/components/Modal/Modal.styles_1fjhyqd.css +0 -3
  694. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles_1fesyfv.css +0 -3
  695. package/es/components/Select/Select.styles_768h42.css +0 -5
  696. package/es/components/Select/reducers/focusedChipIndexReducer.js +0 -35
  697. package/es/components/Select/reducers/focusedChipIndexReducer.js.map +0 -1
  698. package/es/components/Select/ui/Inner/ui/Item/Item.styles_8oe5oy.css +0 -9
  699. package/es/components/Select/ui/Target/ui/Button/Button.styles_lxxm4p.css +0 -5
  700. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles_1damf5p.css +0 -12
  701. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.css +0 -21
  702. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -32
  703. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js.map +0 -1
  704. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -18
  705. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js.map +0 -1
  706. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles_1a752pa.css +0 -1
  707. package/es/components/Select/variations/_size/base.js +0 -5
  708. package/es/components/Select/variations/_size/base.js.map +0 -1
  709. package/es/components/Select/variations/_size/base_x642ct.css +0 -1
  710. package/es/components/Select/variations/_view/base.js +0 -5
  711. package/es/components/Select/variations/_view/base.js.map +0 -1
  712. package/es/components/Select/variations/_view/base_x642ct.css +0 -1
  713. package/es/components/Steps/ui/StepItem/StepItem.styles_sp9rcd.css +0 -9
  714. package/es/components/TextField/variations/_label-placement/base_3domm.css +0 -1
  715. package/styled-components/cjs/components/Modal/Modal.styles.js +0 -18
  716. package/styled-components/cjs/components/Select/reducers/focusedChipIndexReducer.js +0 -38
  717. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -37
  718. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -21
  719. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/ui/index.js +0 -16
  720. package/styled-components/cjs/components/Select/variations/_size/base.js +0 -8
  721. package/styled-components/cjs/components/Select/variations/_size/tokens.json +0 -9
  722. package/styled-components/cjs/components/Select/variations/_view/base.js +0 -8
  723. package/styled-components/cjs/components/Select/variations/_view/tokens.json +0 -1
  724. package/styled-components/es/components/Modal/Modal.styles.js +0 -11
  725. package/styled-components/es/components/Select/reducers/focusedChipIndexReducer.js +0 -32
  726. package/styled-components/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -28
  727. package/styled-components/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -14
  728. package/styled-components/es/components/Select/ui/Target/ui/Textfield/ui/index.js +0 -1
  729. package/styled-components/es/components/Select/variations/_size/base.js +0 -2
  730. package/styled-components/es/components/Select/variations/_size/tokens.json +0 -9
  731. package/styled-components/es/components/Select/variations/_view/base.js +0 -2
  732. package/styled-components/es/components/Select/variations/_view/tokens.json +0 -1
  733. package/types/components/Modal/Modal.styles.d.ts +0 -5
  734. package/types/components/Modal/Modal.styles.d.ts.map +0 -1
  735. package/types/components/Select/reducers/focusedChipIndexReducer.d.ts +0 -11
  736. package/types/components/Select/reducers/focusedChipIndexReducer.d.ts.map +0 -1
  737. package/types/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.d.ts +0 -9
  738. package/types/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.d.ts.map +0 -1
  739. package/types/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.d.ts +0 -3
  740. package/types/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.d.ts.map +0 -1
  741. package/types/components/Select/ui/Target/ui/Textfield/ui/index.d.ts +0 -2
  742. package/types/components/Select/ui/Target/ui/Textfield/ui/index.d.ts.map +0 -1
  743. package/types/components/Select/variations/_size/base.d.ts +0 -2
  744. package/types/components/Select/variations/_size/base.d.ts.map +0 -1
  745. package/types/components/Select/variations/_view/base.d.ts +0 -2
  746. package/types/components/Select/variations/_view/base.d.ts.map +0 -1
@@ -34,7 +34,7 @@ export var base = process.env.NODE_ENV === "production" ? {
34
34
  } : {
35
35
  name: "121o0v2-plasma-new-hope__base",
36
36
  styles: "display:block;label:plasma-new-hope__base;",
37
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEZpZWxkL1RleHRGaWVsZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNkN1QiIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1RleHRGaWVsZC9UZXh0RmllbGQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IGZvcndhcmRSZWYsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgRm9ybUV2ZW50SGFuZGxlciwgQ2hhbmdlRXZlbnRIYW5kbGVyLCBLZXlib2FyZEV2ZW50LCBDaGFuZ2VFdmVudCwgTW91c2VFdmVudEhhbmRsZXIgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBzYWZlVXNlSWQsIHVzZUZvcmtSZWYgfSBmcm9tICdAc2FsdXRlanMvcGxhc21hLWNvcmUnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IFJvb3RQcm9wcyB9IGZyb20gJy4uLy4uL2VuZ2luZXMnO1xuaW1wb3J0IHsgY3ggfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyB1c2VPdXRzaWRlQ2xpY2sgfSBmcm9tICcuLi8uLi9ob29rcyc7XG5cbmltcG9ydCB0eXBlIHsgQ2hpcFZhbHVlcywgVGV4dEZpZWxkUHJpbWl0aXZlVmFsdWUsIFRleHRGaWVsZFByb3BzLCBUZXh0RmllbGRSb290UHJvcHMgfSBmcm9tICcuL1RleHRGaWVsZC50eXBlcyc7XG5pbXBvcnQgeyBiYXNlIGFzIHNpemVDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3NpemUvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIHZpZXdDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3ZpZXcvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGNsZWFyQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19jbGVhci9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgZGlzYWJsZWRDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2Rpc2FibGVkL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyByZWFkT25seUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fcmVhZC1vbmx5L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBsYWJlbFBsYWNlbWVudENTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fbGFiZWwtcGxhY2VtZW50L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBoaW50Vmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9faGludC12aWV3L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBoaW50U2l6ZUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9faGludC1zaXplL2Jhc2UnO1xuaW1wb3J0IHtcbiAgICBJbnB1dCxcbiAgICBJbnB1dENvbnRhaW5lcixcbiAgICBMZWZ0SGVscGVyLFxuICAgIExhYmVsLFxuICAgIElucHV0V3JhcHBlcixcbiAgICBJbnB1dExhYmVsV3JhcHBlcixcbiAgICBTdHlsZWRDb250ZW50TGVmdCxcbiAgICBTdHlsZWRDb250ZW50UmlnaHQsXG4gICAgU3R5bGVkQ2hpcHMsXG4gICAgU3R5bGVkVGV4dEJlZm9yZSxcbiAgICBTdHlsZWRUZXh0QWZ0ZXIsXG4gICAgU3R5bGVkSW5kaWNhdG9yLFxuICAgIFN0eWxlZE9wdGlvbmFsVGV4dCxcbiAgICBJbnB1dFBsYWNlaG9sZGVyLFxuICAgIE91dGVyTGFiZWxXcmFwcGVyLFxuICAgIFRpdGxlQ2FwdGlvbixcbiAgICBTdHlsZWRIaW50V3JhcHBlcixcbiAgICBTdHlsZWRJbmRpY2F0b3JXcmFwcGVyLFxufSBmcm9tICcuL1RleHRGaWVsZC5zdHlsZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJy4vVGV4dEZpZWxkLnRva2Vucyc7XG5pbXBvcnQgeyBUZXh0RmllbGRDaGlwIH0gZnJvbSAnLi91aSc7XG5pbXBvcnQgeyB1c2VLZXlOYXZpZ2F0aW9uIH0gZnJvbSAnLi9ob29rcyc7XG5pbXBvcnQgeyBIaW50Q29tcG9uZW50IH0gZnJvbSAnLi91aS9IaW50L0hpbnQnO1xuXG5jb25zdCBvcHRpb25hbFRleHQgPSAnb3B0aW9uYWwnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICAvKiBOT1RFOiBXZWJraXQg0L3QtSDQv9GA0LjQvNC10L3Rj9C10YIgb3BhY2l0eSDQuiBpbmxpbmUg0YLQtdCz0LDQvCAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuYDtcblxuY29uc3QgSElOVF9ERUZBVUxUX09GRlNFVDogW251bWJlciwgbnVtYmVyXSA9IFswLCAwXTtcblxuZXhwb3J0IGNvbnN0IHRleHRGaWVsZFJvb3QgPSAoUm9vdDogUm9vdFByb3BzPEhUTUxEaXZFbGVtZW50LCBUZXh0RmllbGRSb290UHJvcHM+KSA9PlxuICAgIGZvcndhcmRSZWY8SFRNTElucHV0RWxlbWVudCwgVGV4dEZpZWxkUHJvcHM+KFxuICAgICAgICAoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICAgICAgICAgIHN0eWxlLFxuXG4gICAgICAgICAgICAgICAgLy8gbGF5b3V0XG4gICAgICAgICAgICAgICAgY29udGVudExlZnQsXG4gICAgICAgICAgICAgICAgY29udGVudFJpZ2h0LFxuICAgICAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgICAgIGxhYmVsUGxhY2VtZW50LFxuICAgICAgICAgICAgICAgIHRleHRCZWZvcmUsXG4gICAgICAgICAgICAgICAgdGV4dEFmdGVyLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyLFxuICAgICAgICAgICAgICAgIGxlZnRIZWxwZXIsXG4gICAgICAgICAgICAgICAgZW51bWVyYXRpb25UeXBlID0gJ3BsYWluJyxcbiAgICAgICAgICAgICAgICByZXF1aXJlZFBsYWNlbWVudCA9ICdyaWdodCcsXG4gICAgICAgICAgICAgICAgdGl0bGVDYXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgLy8gaGludFxuICAgICAgICAgICAgICAgIGhpbnRUcmlnZ2VyID0gJ2hvdmVyJyxcbiAgICAgICAgICAgICAgICBoaW50VGV4dCxcbiAgICAgICAgICAgICAgICBoaW50VmlldyA9ICdkZWZhdWx0JyxcbiAgICAgICAgICAgICAgICBoaW50U2l6ZSA9ICdtJyxcbiAgICAgICAgICAgICAgICBoaW50VGFyZ2V0SWNvbixcbiAgICAgICAgICAgICAgICBoaW50UGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgICAgICAgICAgIGhpbnRIYXNBcnJvdyxcbiAgICAgICAgICAgICAgICBoaW50T2Zmc2V0ID0gSElOVF9ERUZBVUxUX09GRlNFVCxcbiAgICAgICAgICAgICAgICBoaW50V2lkdGgsXG4gICAgICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0LFxuXG4gICAgICAgICAgICAgICAgLy8gdmFyaWF0aW9uc1xuICAgICAgICAgICAgICAgIHZpZXcsXG4gICAgICAgICAgICAgICAgc2l6ZSxcbiAgICAgICAgICAgICAgICByZWFkT25seSA9IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkID0gZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQgPSBmYWxzZSxcbiAgICAgICAgICAgICAgICBjbGVhciA9IGZhbHNlLFxuICAgICAgICAgICAgICAgIG9wdGlvbmFsLFxuICAgICAgICAgICAgICAgIGhhc0RpdmlkZXIsXG5cbiAgICAgICAgICAgICAgICAvLyBjb250cm9sbGVkXG4gICAgICAgICAgICAgICAgdmFsdWU6IG91dGVyVmFsdWUsXG4gICAgICAgICAgICAgICAgY2hpcHM6IHZhbHVlcyxcblxuICAgICAgICAgICAgICAgIC8vIGV2ZW50c1xuICAgICAgICAgICAgICAgIG9uQ2hhbmdlLFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlQ2hpcHMsXG4gICAgICAgICAgICAgICAgb25TZWFyY2gsXG4gICAgICAgICAgICAgICAgb25LZXlEb3duLFxuXG4gICAgICAgICAgICAgICAgLi4ucmVzdFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlZixcbiAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50UmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaW5wdXRGb3JrUmVmID0gdXNlRm9ya1JlZihpbnB1dFJlZiwgcmVmKTtcbiAgICAgICAgICAgIGNvbnN0IGNoaXBzUmVmcyA9IHVzZVJlZjxBcnJheTxIVE1MQnV0dG9uRWxlbWVudD4+KFtdKTtcblxuICAgICAgICAgICAgY29uc3QgY29udHJvbGxlZFJlZnMgPSB7IGNvbnRlbnRSZWYsIGlucHV0UmVmLCBjaGlwc1JlZnMgfTtcblxuICAgICAgICAgICAgY29uc3QgW2hhc1ZhbHVlLCBzZXRIYXNWYWx1ZV0gPSB1c2VTdGF0ZShcbiAgICAgICAgICAgICAgICBCb29sZWFuKG91dGVyVmFsdWUpIHx8IEJvb2xlYW4oaW5wdXRSZWY/LmN1cnJlbnQ/LnZhbHVlKSB8fCBCb29sZWFuKHJlc3Q/LmRlZmF1bHRWYWx1ZSksXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgW2NoaXBzLCBzZXRDaGlwc10gPSB1c2VTdGF0ZTxBcnJheTxDaGlwVmFsdWVzPj4oW10pO1xuICAgICAgICAgICAgY29uc3QgW2lzSGludFZpc2libGUsIHNldElzSGludFZpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gICAgICAgICAgICBjb25zdCB1bmlxSWQgPSBzYWZlVXNlSWQoKTtcbiAgICAgICAgICAgIGNvbnN0IGlubmVySWQgPSBpZCB8fCB1bmlxSWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbElkID0gc2FmZVVzZUlkKCk7XG4gICAgICAgICAgICBjb25zdCBoZWxwZXJUZXh0SWQgPSBzYWZlVXNlSWQoKTtcblxuICAgICAgICAgICAgY29uc3QgaXNEZWZhdWx0VmlldyA9IHZpZXcgPT09ICdkZWZhdWx0JyB8fCByZWFkT25seSB8fCBkaXNhYmxlZDtcblxuICAgICAgICAgICAgY29uc3QgaXNDaGlwRW51bWVyYXRpb24gPSBlbnVtZXJhdGlvblR5cGUgPT09ICdjaGlwJztcbiAgICAgICAgICAgIGNvbnN0IGlzQ2hpcHNWaXNpYmxlID0gaXNDaGlwRW51bWVyYXRpb24gJiYgQm9vbGVhbihjaGlwcz8ubGVuZ3RoKTtcbiAgICAgICAgICAgIGNvbnN0IHdpdGhIYXNDaGlwcyA9IGlzQ2hpcHNWaXNpYmxlID8gY2xhc3Nlcy5oYXNDaGlwcyA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgY29uc3QgaGFzTGFiZWxWYWx1ZSA9IEJvb2xlYW4obGFiZWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzSW5uZXJMYWJlbCA9IHNpemUgIT09ICd4cycgJiYgbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWlzQ2hpcHNWaXNpYmxlICYmIGhhc0xhYmVsVmFsdWU7XG4gICAgICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicgJiYgaGFzTGFiZWxWYWx1ZTtcbiAgICAgICAgICAgIGNvbnN0IGhhc1BsYWNlaG9sZGVyID0gQm9vbGVhbihwbGFjZWhvbGRlcikgJiYgIWhhc0lubmVyTGFiZWw7XG5cbiAgICAgICAgICAgIGNvbnN0IGlubmVyTGFiZWxWYWx1ZSA9IGhhc0lubmVyTGFiZWwgfHwgaGFzT3V0ZXJMYWJlbCA/IGxhYmVsIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlID0gbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWhhc0lubmVyTGFiZWwgPyB1bmRlZmluZWQgOiBsYWJlbFBsYWNlbWVudDtcblxuICAgICAgICAgICAgY29uc3QgaW5uZXJQbGFjZWhvbGRlclZhbHVlID0gaGFzUGxhY2Vob2xkZXIgPyBwbGFjZWhvbGRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyU2hvd24gPSBCb29sZWFuKGlubmVyUGxhY2Vob2xkZXJWYWx1ZSkgJiYgIWhhc1ZhbHVlO1xuXG4gICAgICAgICAgICBjb25zdCBjbGVhckNsYXNzID0gY2xlYXIgPyBjbGFzc2VzLmNsZWFyIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaGFzRGl2aWRlckNsYXNzID0gaGFzRGl2aWRlciA/IGNsYXNzZXMuaGFzRGl2aWRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGhhc0hpbnRDbGFzcyA9IGhpbnRUZXh0ID8gY2xhc3Nlcy5oYXNIaW50IDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyA9IHJlcXVpcmVkUGxhY2VtZW50ID09PSAncmlnaHQnID8gY2xhc3Nlcy5yZXF1aXJlZEFsaWduUmlnaHQgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbFBsYWNlbWVudENsYXNzID0gaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlXG4gICAgICAgICAgICAgICAgPyBjbGFzc2VzW2Ake2lubmVyTGFiZWxQbGFjZW1lbnRWYWx1ZX1MYWJlbFBsYWNlbWVudGAgYXMga2V5b2YgdHlwZW9mIGNsYXNzZXNdXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBoYXNWYWx1ZUNsYXNzID0gaGFzVmFsdWUgPyBjbGFzc2VzLmhhc1ZhbHVlIDogdW5kZWZpbmVkO1xuXG4gICAgICAgICAgICBjb25zdCB3cmFwcGVyV2l0aG91dExlZnRDb250ZW50ID0gIWNvbnRlbnRMZWZ0ICYmIGlzQ2hpcHNWaXNpYmxlID8gY2xhc3Nlcy5oYXNFbXB0eUNvbnRlbnRMZWZ0IDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3Qgd3JhcHBlcldpdGhvdXRSaWdodENvbnRlbnQgPVxuICAgICAgICAgICAgICAgICFjb250ZW50UmlnaHQgJiYgaXNDaGlwc1Zpc2libGUgPyBjbGFzc2VzLmhhc0VtcHR5Q29udGVudFJpZ2h0IDogdW5kZWZpbmVkO1xuXG4gICAgICAgICAgICBjb25zdCBoaW50UmVmID0gdXNlT3V0c2lkZUNsaWNrPEhUTUxEaXZFbGVtZW50PigoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SXNIaW50VmlzaWJsZShmYWxzZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IGhpbnRJbm5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gICAgICAgICAgICBjb25zdCBoaW50Rm9ya1JlZiA9IHVzZUZvcmtSZWYoaGludFJlZiwgaGludElubmVyUmVmKTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlSW5wdXQ6IEZvcm1FdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudD4gPSAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRIYXNWYWx1ZShCb29sZWFuKChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUpKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUhpbnRTaG93ID0gKCkgPT4gc2V0SXNIaW50VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUhpbnRIaWRlID0gKCkgPT4gc2V0SXNIaW50VmlzaWJsZShmYWxzZSk7XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVIaW50Q2xpY2s6IE1vdXNlRXZlbnRIYW5kbGVyID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFoaW50VGV4dCB8fCBoaW50VHJpZ2dlciAhPT0gJ2NsaWNrJykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0SXNQb3BvdmVyID0gZXZlbnQudGFyZ2V0ID09PSBoaW50SW5uZXJSZWYuY3VycmVudDtcbiAgICAgICAgICAgICAgICBjb25zdCByb290SGFzVGFyZ2V0ID0gaGludElubmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBFbGVtZW50KTtcblxuICAgICAgICAgICAgICAgIGlmICghdGFyZ2V0SXNQb3BvdmVyICYmICFyb290SGFzVGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgICAgIHNldElzSGludFZpc2libGUodHJ1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlQ2hhbmdlOiBDaGFuZ2VFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudD4gPSAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZGlzYWJsZWQgfHwgcmVhZE9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IHsgbWF4TGVuZ3RoLCB2YWx1ZSB9ID0gZXZlbnQudGFyZ2V0O1xuXG4gICAgICAgICAgICAgICAgaWYgKG1heExlbmd0aCAhPT0gLTEgJiYgdmFsdWUubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT8uKGV2ZW50KTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IHVwZGF0ZUNoaXBzID0gKG5ld0NoaXBzOiBBcnJheTxDaGlwVmFsdWVzPiwgbmV3VmFsdWVzOiBBcnJheTxUZXh0RmllbGRQcmltaXRpdmVWYWx1ZT4pID0+IHtcbiAgICAgICAgICAgICAgICBzZXRDaGlwcyhuZXdDaGlwcyk7XG4gICAgICAgICAgICAgICAgb25DaGFuZ2VDaGlwcz8uKG5ld1ZhbHVlcyk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCB7IGhhbmRsZUlucHV0S2V5ZG93biwgaGFuZGxlQ2hpcEtleURvd24sIG9uQ2hpcENsZWFyLCBoYW5kbGVDb250ZW50S2V5RG93biB9ID0gdXNlS2V5TmF2aWdhdGlvbih7XG4gICAgICAgICAgICAgICAgY29udHJvbGxlZFJlZnMsXG4gICAgICAgICAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgcmVhZE9ubHksXG4gICAgICAgICAgICAgICAgY2hpcHMsXG4gICAgICAgICAgICAgICAgZW51bWVyYXRpb25UeXBlLFxuICAgICAgICAgICAgICAgIHVwZGF0ZUNoaXBzLFxuICAgICAgICAgICAgICAgIG9uU2VhcmNoLFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlLFxuICAgICAgICAgICAgICAgIG9uRW50ZXJEaXNhYmxlZDogKHJlc3QgYXMgYW55KS5vbkVudGVyRGlzYWJsZWQsXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgY29uc3Qgb25DaGlwQ2xpY2sgPSAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+KSA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlSW5wdXRGb2N1cyA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVhZE9ubHkgfHwgZGlzYWJsZWQgfHwgIWlucHV0UmVmPy5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LnNjcm9sbFRvKHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLFxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBpbnB1dFJlZi5jdXJyZW50Lm9mZnNldExlZnQsXG4gICAgICAgICAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGdldFJlZiA9IChlbGVtZW50OiBIVE1MQnV0dG9uRWxlbWVudCB8IG51bGwsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudCAmJiBjaGlwc1JlZnM/LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgY2hpcHNSZWZzLmN1cnJlbnRbaW5kZXhdID0gZWxlbWVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVPbktleURvd24gPSAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+ICYgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgICAgICAgICAgICAgIGhhbmRsZUlucHV0S2V5ZG93bihldmVudCk7XG5cbiAgICAgICAgICAgICAgICBpZiAob25LZXlEb3duKSB7XG4gICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bihldmVudCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzQ2hpcEVudW1lcmF0aW9uICYmICF2YWx1ZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgbmV3Q2hpcHMgPVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZXM/Lm1hcCgodmFsdWUsIGluZGV4KSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGAke2luZGV4fV8ke3ZhbHVlfWAsXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgfSkpIHx8IFtdO1xuXG4gICAgICAgICAgICAgICAgc2V0Q2hpcHMobmV3Q2hpcHMpO1xuICAgICAgICAgICAgfSwgW2lzQ2hpcEVudW1lcmF0aW9uLCB2YWx1ZXNdKTtcblxuICAgICAgICAgICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRIYXNWYWx1ZShCb29sZWFuKHJlc3Q/LmRlZmF1bHRWYWx1ZSkpO1xuICAgICAgICAgICAgfSwgW3Jlc3QuZGVmYXVsdFZhbHVlXSk7XG5cbiAgICAgICAgICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SGFzVmFsdWUoQm9vbGVhbihvdXRlclZhbHVlKSB8fCBCb29sZWFuKGlucHV0UmVmPy5jdXJyZW50Py52YWx1ZSkpO1xuICAgICAgICAgICAgfSwgW291dGVyVmFsdWUsIGlucHV0UmVmPy5jdXJyZW50Py52YWx1ZV0pO1xuXG4gICAgICAgICAgICBjb25zdCBpbm5lck9wdGlvbmFsID0gQm9vbGVhbihyZXF1aXJlZCA/IGZhbHNlIDogb3B0aW9uYWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA9IGlubmVyT3B0aW9uYWwgJiYgIWlubmVyTGFiZWxWYWx1ZSAmJiAhaGFzT3V0ZXJMYWJlbDtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbmFsVGV4dE5vZGUgPSBpbm5lck9wdGlvbmFsID8gKFxuICAgICAgICAgICAgICAgIDxTdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICAgICAgICAgICAgIHtCb29sZWFuKGhhc1BsYWNlaG9sZGVyT3B0aW9uYWwgPyBpbm5lclBsYWNlaG9sZGVyVmFsdWUgOiBpbm5lckxhYmVsVmFsdWUpICYmICdcXHhhMCd9XG4gICAgICAgICAgICAgICAgICAgIHtvcHRpb25hbFRleHR9XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICAgICApIDogbnVsbDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8Um9vdFxuICAgICAgICAgICAgICAgICAgICB2aWV3PXt2aWV3fVxuICAgICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXshZGlzYWJsZWQgJiYgcmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgICAgIGNsZWFyPXtjbGVhcn1cbiAgICAgICAgICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQ9e2lubmVyTGFiZWxQbGFjZW1lbnRWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlSW5wdXRGb2N1c31cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsUGxhY2VtZW50Q2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhckNsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGFzRGl2aWRlckNsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGFzSGludENsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcy50ZXh0RmllbGRHcm91cEl0ZW0sXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPXtzdHlsZX1cbiAgICAgICAgICAgICAgICAgICAgey4uLihoaW50VGV4dCAmJiB7IGhpbnRWaWV3LCBoaW50U2l6ZSB9KX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHsoaGFzT3V0ZXJMYWJlbCB8fCB0aXRsZUNhcHRpb24pICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDxPdXRlckxhYmVsV3JhcHBlciBpc0lubmVyTGFiZWw9e2xhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzT3V0ZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbmRpY2F0b3JXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExhYmVsIGlkPXtsYWJlbElkfSBodG1sRm9yPXtpZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lubmVyTGFiZWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGFiZWw+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoaW50VGV4dCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SGludENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaW50Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUZXh0PXtoaW50VGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUcmlnZ2VyPXtoaW50VHJpZ2dlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSGludFZpc2libGU9e2lzSGludFZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VGFyZ2V0SWNvbj17aGludFRhcmdldEljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50UGxhY2VtZW50PXtoaW50UGxhY2VtZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludEhhc0Fycm93PXtoaW50SGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50T2Zmc2V0PXtoaW50T2Zmc2V0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFdpZHRoPXtoaW50V2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQ9e2hpbnRDb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRTaG93PXtoYW5kbGVIaW50U2hvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRIaWRlPXtoYW5kbGVIaW50SGlkZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkSGludFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3JlcXVpcmVkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzLm91dGVyTGFiZWxQbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFBsYWNlbWVudENsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzSGludENsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dE5vZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkSW5kaWNhdG9yV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt0aXRsZUNhcHRpb24gJiYgPFRpdGxlQ2FwdGlvbj57dGl0bGVDYXB0aW9ufTwvVGl0bGVDYXB0aW9uPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvT3V0ZXJMYWJlbFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbnB1dFdyYXBwZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlZiDQtNC70Y8g0LLQvdGD0YLRgNC10L3QvdC10LPQviDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjRjy4g0J3QtSDQvtGC0LTQsNC10YLRgdGPINC90LDRgNGD0LbRgy5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17KHJlc3QgYXMgYW55KS5pbnB1dFdyYXBwZXJSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KHdpdGhIYXNDaGlwcywgd3JhcHBlcldpdGhvdXRMZWZ0Q29udGVudCwgd3JhcHBlcldpdGhvdXRSaWdodENvbnRlbnQpfVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyZXF1aXJlZCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChjbGFzc2VzLmlubmVyTGFiZWxQbGFjZW1lbnQsIHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2hpbnRUZXh0ICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRIaW50V3JhcHBlciBjbGFzc05hbWU9e2NsYXNzZXMuaW5uZXJMYWJlbFBsYWNlbWVudH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhpbnRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaW50Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRleHQ9e2hpbnRUZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VHJpZ2dlcj17aGludFRyaWdnZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSGludFZpc2libGU9e2lzSGludFZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uPXtoaW50VGFyZ2V0SWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFBsYWNlbWVudD17aGludFBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludEhhc0Fycm93PXtoaW50SGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQ9e2hpbnRPZmZzZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRXaWR0aD17aGludFdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQ9e2hpbnRDb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludFNob3c9e2hhbmRsZUhpbnRTaG93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50SGlkZT17aGFuZGxlSGludEhpZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHtjb250ZW50TGVmdCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRMZWZ0IGlzQ2xlYXI9e2NsZWFyfSBpc0RlZmF1bHRWaWV3PXtpc0RlZmF1bHRWaWV3fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2NvbnRlbnRMZWZ0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudExlZnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0TGFiZWxXcmFwcGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFiSW5kZXg9ey0xfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17Y29udGVudFJlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbktleURvd249e2hhbmRsZUNvbnRlbnRLZXlEb3dufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17d2l0aEhhc0NoaXBzfVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt0ZXh0QmVmb3JlICYmIDxTdHlsZWRUZXh0QmVmb3JlPnt0ZXh0QmVmb3JlfTwvU3R5bGVkVGV4dEJlZm9yZT59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2lzQ2hpcEVudW1lcmF0aW9uICYmIEJvb2xlYW4oY2hpcHM/Lmxlbmd0aCkgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkQ2hpcHM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Y2hpcHM/Lm1hcCgoeyBpZDogY2hpcElkLCB0ZXh0IH0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRleHRGaWVsZENoaXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtjaGlwSWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9eyhlbGVtZW50KSA9PiBnZXRSZWYoZWxlbWVudCwgaW5kZXgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtgJHtjaGlwSWR9XyR7aW5kZXh9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXt0ZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dD17dGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bj17KGV2ZW50KSA9PiBoYW5kbGVDaGlwS2V5RG93bihldmVudCwgY2hpcElkLCBpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsZWFyPXsoKSA9PiBvbkNoaXBDbGVhcihjaGlwSWQsIGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ2hpcENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRDaGlwcz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2lucHV0Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtpbm5lcklkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e291dGVyVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e2xhYmVsSWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PXtoZWxwZXJUZXh0SWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17aW5uZXJQbGFjZWhvbGRlclZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChoYXNWYWx1ZUNsYXNzKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXshZGlzYWJsZWQgJiYgcmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbklucHV0PXtoYW5kbGVJbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbktleURvd249e2hhbmRsZU9uS2V5RG93bn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsuLi5yZXN0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzSW5uZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGFiZWwgaWQ9e2xhYmVsSWR9IGh0bWxGb3I9e2lubmVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbm5lckxhYmVsVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dE5vZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGxhY2Vob2xkZXJTaG93biAmJiAhaGFzVmFsdWUgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0UGxhY2Vob2xkZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lubmVyUGxhY2Vob2xkZXJWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzUGxhY2Vob2xkZXJPcHRpb25hbCAmJiBvcHRpb25hbFRleHROb2RlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dFBsYWNlaG9sZGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSW5wdXRDb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3RleHRBZnRlciAmJiA8U3R5bGVkVGV4dEFmdGVyPnt0ZXh0QWZ0ZXJ9PC9TdHlsZWRUZXh0QWZ0ZXI+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dExhYmVsV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtjb250ZW50UmlnaHQgJiYgPFN0eWxlZENvbnRlbnRSaWdodD57Y29udGVudFJpZ2h0fTwvU3R5bGVkQ29udGVudFJpZ2h0Pn1cbiAgICAgICAgICAgICAgICAgICAgPC9JbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIHtsZWZ0SGVscGVyICYmIDxMZWZ0SGVscGVyIGlkPXtoZWxwZXJUZXh0SWR9PntsZWZ0SGVscGVyfTwvTGVmdEhlbHBlcj59XG4gICAgICAgICAgICAgICAgPC9Sb290PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICApO1xuXG5leHBvcnQgY29uc3QgdGV4dEZpZWxkQ29uZmlnID0ge1xuICAgIG5hbWU6ICdUZXh0RmllbGQnLFxuICAgIHRhZzogJ2RpdicsXG4gICAgbGF5b3V0OiB0ZXh0RmllbGRSb290LFxuICAgIGJhc2UsXG4gICAgdmFyaWF0aW9uczoge1xuICAgICAgICB2aWV3OiB7XG4gICAgICAgICAgICBjc3M6IHZpZXdDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIGNzczogc2l6ZUNTUyxcbiAgICAgICAgfSxcbiAgICAgICAgY2xlYXI6IHtcbiAgICAgICAgICAgIGNzczogY2xlYXJDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgZGlzYWJsZWQ6IHtcbiAgICAgICAgICAgIGNzczogZGlzYWJsZWRDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVhZE9ubHk6IHtcbiAgICAgICAgICAgIGNzczogcmVhZE9ubHlDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgbGFiZWxQbGFjZW1lbnQ6IHtcbiAgICAgICAgICAgIGNzczogbGFiZWxQbGFjZW1lbnRDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIGhpbnRWaWV3OiB7XG4gICAgICAgICAgICBjc3M6IGhpbnRWaWV3Q1NTLFxuICAgICAgICB9LFxuICAgICAgICBoaW50U2l6ZToge1xuICAgICAgICAgICAgY3NzOiBoaW50U2l6ZUNTUyxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmF1bHRzOiB7XG4gICAgICAgIHNpemU6ICdtJyxcbiAgICAgICAgdmlldzogJ2RlZmF1bHQnLFxuICAgIH0sXG59O1xuIl19 */",
37
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEZpZWxkL1RleHRGaWVsZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNkN1QiIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1RleHRGaWVsZC9UZXh0RmllbGQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IGZvcndhcmRSZWYsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgRm9ybUV2ZW50SGFuZGxlciwgQ2hhbmdlRXZlbnRIYW5kbGVyLCBLZXlib2FyZEV2ZW50LCBDaGFuZ2VFdmVudCwgTW91c2VFdmVudEhhbmRsZXIgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBzYWZlVXNlSWQsIHVzZUZvcmtSZWYgfSBmcm9tICdAc2FsdXRlanMvcGxhc21hLWNvcmUnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IFJvb3RQcm9wcyB9IGZyb20gJy4uLy4uL2VuZ2luZXMnO1xuaW1wb3J0IHsgY3ggfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyB1c2VPdXRzaWRlQ2xpY2sgfSBmcm9tICcuLi8uLi9ob29rcyc7XG5cbmltcG9ydCB0eXBlIHsgQ2hpcFZhbHVlcywgVGV4dEZpZWxkUHJpbWl0aXZlVmFsdWUsIFRleHRGaWVsZFByb3BzLCBUZXh0RmllbGRSb290UHJvcHMgfSBmcm9tICcuL1RleHRGaWVsZC50eXBlcyc7XG5pbXBvcnQgeyBiYXNlIGFzIHNpemVDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3NpemUvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIHZpZXdDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3ZpZXcvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGNsZWFyQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19jbGVhci9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgZGlzYWJsZWRDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2Rpc2FibGVkL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyByZWFkT25seUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fcmVhZC1vbmx5L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBsYWJlbFBsYWNlbWVudENTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fbGFiZWwtcGxhY2VtZW50L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBoaW50Vmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9faGludC12aWV3L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBoaW50U2l6ZUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9faGludC1zaXplL2Jhc2UnO1xuaW1wb3J0IHtcbiAgICBJbnB1dCxcbiAgICBJbnB1dENvbnRhaW5lcixcbiAgICBMZWZ0SGVscGVyLFxuICAgIExhYmVsLFxuICAgIElucHV0V3JhcHBlcixcbiAgICBJbnB1dExhYmVsV3JhcHBlcixcbiAgICBTdHlsZWRDb250ZW50TGVmdCxcbiAgICBTdHlsZWRDb250ZW50UmlnaHQsXG4gICAgU3R5bGVkQ2hpcHMsXG4gICAgU3R5bGVkVGV4dEJlZm9yZSxcbiAgICBTdHlsZWRUZXh0QWZ0ZXIsXG4gICAgU3R5bGVkSW5kaWNhdG9yLFxuICAgIFN0eWxlZE9wdGlvbmFsVGV4dCxcbiAgICBJbnB1dFBsYWNlaG9sZGVyLFxuICAgIE91dGVyTGFiZWxXcmFwcGVyLFxuICAgIFRpdGxlQ2FwdGlvbixcbiAgICBTdHlsZWRIaW50V3JhcHBlcixcbiAgICBTdHlsZWRJbmRpY2F0b3JXcmFwcGVyLFxufSBmcm9tICcuL1RleHRGaWVsZC5zdHlsZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJy4vVGV4dEZpZWxkLnRva2Vucyc7XG5pbXBvcnQgeyBUZXh0RmllbGRDaGlwIH0gZnJvbSAnLi91aSc7XG5pbXBvcnQgeyB1c2VLZXlOYXZpZ2F0aW9uIH0gZnJvbSAnLi9ob29rcyc7XG5pbXBvcnQgeyBIaW50Q29tcG9uZW50IH0gZnJvbSAnLi91aS9IaW50L0hpbnQnO1xuXG5jb25zdCBvcHRpb25hbFRleHQgPSAnb3B0aW9uYWwnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICAvKiBOT1RFOiBXZWJraXQg0L3QtSDQv9GA0LjQvNC10L3Rj9C10YIgb3BhY2l0eSDQuiBpbmxpbmUg0YLQtdCz0LDQvCAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuYDtcblxuY29uc3QgSElOVF9ERUZBVUxUX09GRlNFVDogW251bWJlciwgbnVtYmVyXSA9IFswLCAwXTtcblxuZXhwb3J0IGNvbnN0IHRleHRGaWVsZFJvb3QgPSAoUm9vdDogUm9vdFByb3BzPEhUTUxEaXZFbGVtZW50LCBUZXh0RmllbGRSb290UHJvcHM+KSA9PlxuICAgIGZvcndhcmRSZWY8SFRNTElucHV0RWxlbWVudCwgVGV4dEZpZWxkUHJvcHM+KFxuICAgICAgICAoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICAgICAgICAgIHN0eWxlLFxuXG4gICAgICAgICAgICAgICAgLy8gbGF5b3V0XG4gICAgICAgICAgICAgICAgY29udGVudExlZnQsXG4gICAgICAgICAgICAgICAgY29udGVudFJpZ2h0LFxuICAgICAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgICAgIGxhYmVsUGxhY2VtZW50LFxuICAgICAgICAgICAgICAgIHRleHRCZWZvcmUsXG4gICAgICAgICAgICAgICAgdGV4dEFmdGVyLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyLFxuICAgICAgICAgICAgICAgIGxlZnRIZWxwZXIsXG4gICAgICAgICAgICAgICAgZW51bWVyYXRpb25UeXBlID0gJ3BsYWluJyxcbiAgICAgICAgICAgICAgICByZXF1aXJlZFBsYWNlbWVudCA9ICdyaWdodCcsXG4gICAgICAgICAgICAgICAgdGl0bGVDYXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgLy8gaGludFxuICAgICAgICAgICAgICAgIGhpbnRUcmlnZ2VyID0gJ2hvdmVyJyxcbiAgICAgICAgICAgICAgICBoaW50VGV4dCxcbiAgICAgICAgICAgICAgICBoaW50VmlldyA9ICdkZWZhdWx0JyxcbiAgICAgICAgICAgICAgICBoaW50U2l6ZSA9ICdtJyxcbiAgICAgICAgICAgICAgICBoaW50VGFyZ2V0SWNvbixcbiAgICAgICAgICAgICAgICBoaW50UGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgICAgICAgICAgIGhpbnRIYXNBcnJvdyxcbiAgICAgICAgICAgICAgICBoaW50T2Zmc2V0ID0gSElOVF9ERUZBVUxUX09GRlNFVCxcbiAgICAgICAgICAgICAgICBoaW50V2lkdGgsXG4gICAgICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0LFxuXG4gICAgICAgICAgICAgICAgLy8gdmFyaWF0aW9uc1xuICAgICAgICAgICAgICAgIHZpZXcsXG4gICAgICAgICAgICAgICAgc2l6ZSxcbiAgICAgICAgICAgICAgICByZWFkT25seSA9IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkID0gZmFsc2UsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQgPSBmYWxzZSxcbiAgICAgICAgICAgICAgICBjbGVhciA9IGZhbHNlLFxuICAgICAgICAgICAgICAgIG9wdGlvbmFsLFxuICAgICAgICAgICAgICAgIGhhc0RpdmlkZXIsXG5cbiAgICAgICAgICAgICAgICAvLyBjb250cm9sbGVkXG4gICAgICAgICAgICAgICAgdmFsdWU6IG91dGVyVmFsdWUsXG4gICAgICAgICAgICAgICAgY2hpcHM6IHZhbHVlcyxcblxuICAgICAgICAgICAgICAgIC8vIGV2ZW50c1xuICAgICAgICAgICAgICAgIG9uQ2hhbmdlLFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlQ2hpcHMsXG4gICAgICAgICAgICAgICAgb25TZWFyY2gsXG4gICAgICAgICAgICAgICAgb25LZXlEb3duLFxuXG4gICAgICAgICAgICAgICAgLi4ucmVzdFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlZixcbiAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50UmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaW5wdXRGb3JrUmVmID0gdXNlRm9ya1JlZihpbnB1dFJlZiwgcmVmKTtcbiAgICAgICAgICAgIGNvbnN0IGNoaXBzUmVmcyA9IHVzZVJlZjxBcnJheTxIVE1MQnV0dG9uRWxlbWVudD4+KFtdKTtcblxuICAgICAgICAgICAgY29uc3QgY29udHJvbGxlZFJlZnMgPSB7IGNvbnRlbnRSZWYsIGlucHV0UmVmLCBjaGlwc1JlZnMgfTtcblxuICAgICAgICAgICAgY29uc3QgW2hhc1ZhbHVlLCBzZXRIYXNWYWx1ZV0gPSB1c2VTdGF0ZShcbiAgICAgICAgICAgICAgICBCb29sZWFuKG91dGVyVmFsdWUpIHx8IEJvb2xlYW4oaW5wdXRSZWY/LmN1cnJlbnQ/LnZhbHVlKSB8fCBCb29sZWFuKHJlc3Q/LmRlZmF1bHRWYWx1ZSksXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgW2NoaXBzLCBzZXRDaGlwc10gPSB1c2VTdGF0ZTxBcnJheTxDaGlwVmFsdWVzPj4oW10pO1xuICAgICAgICAgICAgY29uc3QgW2lzSGludFZpc2libGUsIHNldElzSGludFZpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gICAgICAgICAgICBjb25zdCB1bmlxSWQgPSBzYWZlVXNlSWQoKTtcbiAgICAgICAgICAgIGNvbnN0IGlubmVySWQgPSBpZCB8fCB1bmlxSWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbElkID0gc2FmZVVzZUlkKCk7XG4gICAgICAgICAgICBjb25zdCBoZWxwZXJUZXh0SWQgPSBzYWZlVXNlSWQoKTtcblxuICAgICAgICAgICAgY29uc3QgaXNEZWZhdWx0VmlldyA9IHZpZXcgPT09ICdkZWZhdWx0JyB8fCByZWFkT25seSB8fCBkaXNhYmxlZDtcblxuICAgICAgICAgICAgY29uc3QgaXNDaGlwRW51bWVyYXRpb24gPSBlbnVtZXJhdGlvblR5cGUgPT09ICdjaGlwJztcbiAgICAgICAgICAgIGNvbnN0IGlzQ2hpcHNWaXNpYmxlID0gaXNDaGlwRW51bWVyYXRpb24gJiYgQm9vbGVhbihjaGlwcz8ubGVuZ3RoKTtcbiAgICAgICAgICAgIGNvbnN0IHdpdGhIYXNDaGlwcyA9IGlzQ2hpcHNWaXNpYmxlID8gY2xhc3Nlcy5oYXNDaGlwcyA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgY29uc3QgaGFzTGFiZWxWYWx1ZSA9IEJvb2xlYW4obGFiZWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzSW5uZXJMYWJlbCA9IHNpemUgIT09ICd4cycgJiYgbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWlzQ2hpcHNWaXNpYmxlICYmIGhhc0xhYmVsVmFsdWU7XG4gICAgICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicgJiYgaGFzTGFiZWxWYWx1ZTtcbiAgICAgICAgICAgIGNvbnN0IGhhc1BsYWNlaG9sZGVyID0gQm9vbGVhbihwbGFjZWhvbGRlcikgJiYgIWhhc0lubmVyTGFiZWw7XG5cbiAgICAgICAgICAgIGNvbnN0IGlubmVyTGFiZWxWYWx1ZSA9IGhhc0lubmVyTGFiZWwgfHwgaGFzT3V0ZXJMYWJlbCA/IGxhYmVsIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlID0gbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWhhc0lubmVyTGFiZWwgPyB1bmRlZmluZWQgOiBsYWJlbFBsYWNlbWVudDtcblxuICAgICAgICAgICAgY29uc3QgaW5uZXJQbGFjZWhvbGRlclZhbHVlID0gaGFzUGxhY2Vob2xkZXIgPyBwbGFjZWhvbGRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyU2hvd24gPSBCb29sZWFuKGlubmVyUGxhY2Vob2xkZXJWYWx1ZSkgJiYgIWhhc1ZhbHVlO1xuXG4gICAgICAgICAgICBjb25zdCBjbGVhckNsYXNzID0gY2xlYXIgPyBjbGFzc2VzLmNsZWFyIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaGFzRGl2aWRlckNsYXNzID0gaGFzRGl2aWRlciA/IGNsYXNzZXMuaGFzRGl2aWRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGhhc0hpbnRDbGFzcyA9IGhpbnRUZXh0ID8gY2xhc3Nlcy5oYXNIaW50IDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyA9IHJlcXVpcmVkUGxhY2VtZW50ID09PSAncmlnaHQnID8gY2xhc3Nlcy5yZXF1aXJlZEFsaWduUmlnaHQgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbFBsYWNlbWVudENsYXNzID0gaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlXG4gICAgICAgICAgICAgICAgPyBjbGFzc2VzW2Ake2lubmVyTGFiZWxQbGFjZW1lbnRWYWx1ZX1MYWJlbFBsYWNlbWVudGAgYXMga2V5b2YgdHlwZW9mIGNsYXNzZXNdXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBoYXNWYWx1ZUNsYXNzID0gaGFzVmFsdWUgPyBjbGFzc2VzLmhhc1ZhbHVlIDogdW5kZWZpbmVkO1xuXG4gICAgICAgICAgICBjb25zdCB3cmFwcGVyV2l0aG91dExlZnRDb250ZW50ID0gIWNvbnRlbnRMZWZ0ICYmIGlzQ2hpcHNWaXNpYmxlID8gY2xhc3Nlcy5oYXNFbXB0eUNvbnRlbnRMZWZ0IDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3Qgd3JhcHBlcldpdGhvdXRSaWdodENvbnRlbnQgPVxuICAgICAgICAgICAgICAgICFjb250ZW50UmlnaHQgJiYgaXNDaGlwc1Zpc2libGUgPyBjbGFzc2VzLmhhc0VtcHR5Q29udGVudFJpZ2h0IDogdW5kZWZpbmVkO1xuXG4gICAgICAgICAgICBjb25zdCBoaW50UmVmID0gdXNlT3V0c2lkZUNsaWNrPEhUTUxEaXZFbGVtZW50PigoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SXNIaW50VmlzaWJsZShmYWxzZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IGhpbnRJbm5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gICAgICAgICAgICBjb25zdCBoaW50Rm9ya1JlZiA9IHVzZUZvcmtSZWYoaGludFJlZiwgaGludElubmVyUmVmKTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlSW5wdXQ6IEZvcm1FdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudD4gPSAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRIYXNWYWx1ZShCb29sZWFuKChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUpKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUhpbnRTaG93ID0gKCkgPT4gc2V0SXNIaW50VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUhpbnRIaWRlID0gKCkgPT4gc2V0SXNIaW50VmlzaWJsZShmYWxzZSk7XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVIaW50Q2xpY2s6IE1vdXNlRXZlbnRIYW5kbGVyID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFoaW50VGV4dCB8fCBoaW50VHJpZ2dlciAhPT0gJ2NsaWNrJykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0SXNQb3BvdmVyID0gZXZlbnQudGFyZ2V0ID09PSBoaW50SW5uZXJSZWYuY3VycmVudDtcbiAgICAgICAgICAgICAgICBjb25zdCByb290SGFzVGFyZ2V0ID0gaGludElubmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBFbGVtZW50KTtcblxuICAgICAgICAgICAgICAgIGlmICghdGFyZ2V0SXNQb3BvdmVyICYmICFyb290SGFzVGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgICAgIHNldElzSGludFZpc2libGUodHJ1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlQ2hhbmdlOiBDaGFuZ2VFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudD4gPSAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZGlzYWJsZWQgfHwgcmVhZE9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IHsgbWF4TGVuZ3RoLCB2YWx1ZSB9ID0gZXZlbnQudGFyZ2V0O1xuXG4gICAgICAgICAgICAgICAgaWYgKG1heExlbmd0aCAhPT0gLTEgJiYgdmFsdWUubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT8uKGV2ZW50KTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IHVwZGF0ZUNoaXBzID0gKG5ld0NoaXBzOiBBcnJheTxDaGlwVmFsdWVzPiwgbmV3VmFsdWVzOiBBcnJheTxUZXh0RmllbGRQcmltaXRpdmVWYWx1ZT4pID0+IHtcbiAgICAgICAgICAgICAgICBzZXRDaGlwcyhuZXdDaGlwcyk7XG4gICAgICAgICAgICAgICAgb25DaGFuZ2VDaGlwcz8uKG5ld1ZhbHVlcyk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCB7IGhhbmRsZUlucHV0S2V5ZG93biwgaGFuZGxlQ2hpcEtleURvd24sIG9uQ2hpcENsZWFyLCBoYW5kbGVDb250ZW50S2V5RG93biB9ID0gdXNlS2V5TmF2aWdhdGlvbih7XG4gICAgICAgICAgICAgICAgY29udHJvbGxlZFJlZnMsXG4gICAgICAgICAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgcmVhZE9ubHksXG4gICAgICAgICAgICAgICAgY2hpcHMsXG4gICAgICAgICAgICAgICAgZW51bWVyYXRpb25UeXBlLFxuICAgICAgICAgICAgICAgIHVwZGF0ZUNoaXBzLFxuICAgICAgICAgICAgICAgIG9uU2VhcmNoLFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlLFxuICAgICAgICAgICAgICAgIG9uRW50ZXJEaXNhYmxlZDogKHJlc3QgYXMgYW55KS5vbkVudGVyRGlzYWJsZWQsXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgY29uc3Qgb25DaGlwQ2xpY2sgPSAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+KSA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlSW5wdXRGb2N1cyA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVhZE9ubHkgfHwgZGlzYWJsZWQgfHwgIWlucHV0UmVmPy5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LnNjcm9sbFRvKHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLFxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBpbnB1dFJlZi5jdXJyZW50Lm9mZnNldExlZnQsXG4gICAgICAgICAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGdldFJlZiA9IChlbGVtZW50OiBIVE1MQnV0dG9uRWxlbWVudCB8IG51bGwsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudCAmJiBjaGlwc1JlZnM/LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgY2hpcHNSZWZzLmN1cnJlbnRbaW5kZXhdID0gZWxlbWVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVPbktleURvd24gPSAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+ICYgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgICAgICAgICAgICAgIGhhbmRsZUlucHV0S2V5ZG93bihldmVudCk7XG5cbiAgICAgICAgICAgICAgICBpZiAob25LZXlEb3duKSB7XG4gICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bihldmVudCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzQ2hpcEVudW1lcmF0aW9uICYmICF2YWx1ZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgbmV3Q2hpcHMgPVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZXM/Lm1hcCgodmFsdWUsIGluZGV4KSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGAke2luZGV4fV8ke3ZhbHVlfWAsXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgfSkpIHx8IFtdO1xuXG4gICAgICAgICAgICAgICAgc2V0Q2hpcHMobmV3Q2hpcHMpO1xuICAgICAgICAgICAgfSwgW2lzQ2hpcEVudW1lcmF0aW9uLCB2YWx1ZXNdKTtcblxuICAgICAgICAgICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRIYXNWYWx1ZShCb29sZWFuKHJlc3Q/LmRlZmF1bHRWYWx1ZSkpO1xuICAgICAgICAgICAgfSwgW3Jlc3QuZGVmYXVsdFZhbHVlXSk7XG5cbiAgICAgICAgICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SGFzVmFsdWUoQm9vbGVhbihvdXRlclZhbHVlKSB8fCBCb29sZWFuKGlucHV0UmVmPy5jdXJyZW50Py52YWx1ZSkpO1xuICAgICAgICAgICAgfSwgW291dGVyVmFsdWUsIGlucHV0UmVmPy5jdXJyZW50Py52YWx1ZV0pO1xuXG4gICAgICAgICAgICBjb25zdCBpbm5lck9wdGlvbmFsID0gQm9vbGVhbihyZXF1aXJlZCA/IGZhbHNlIDogb3B0aW9uYWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA9IGlubmVyT3B0aW9uYWwgJiYgIWlubmVyTGFiZWxWYWx1ZSAmJiAhaGFzT3V0ZXJMYWJlbDtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbmFsVGV4dE5vZGUgPSBpbm5lck9wdGlvbmFsID8gKFxuICAgICAgICAgICAgICAgIDxTdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICAgICAgICAgICAgIHtCb29sZWFuKGhhc1BsYWNlaG9sZGVyT3B0aW9uYWwgPyBpbm5lclBsYWNlaG9sZGVyVmFsdWUgOiBpbm5lckxhYmVsVmFsdWUpICYmICdcXHhhMCd9XG4gICAgICAgICAgICAgICAgICAgIHtvcHRpb25hbFRleHR9XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICAgICApIDogbnVsbDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8Um9vdFxuICAgICAgICAgICAgICAgICAgICB2aWV3PXt2aWV3fVxuICAgICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXshZGlzYWJsZWQgJiYgcmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgICAgIGNsZWFyPXtjbGVhcn1cbiAgICAgICAgICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQ9e2lubmVyTGFiZWxQbGFjZW1lbnRWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlSW5wdXRGb2N1c31cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsUGxhY2VtZW50Q2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhckNsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGFzRGl2aWRlckNsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGFzSGludENsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcy50ZXh0RmllbGRHcm91cEl0ZW0sXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPXtzdHlsZX1cbiAgICAgICAgICAgICAgICAgICAgey4uLihoaW50VGV4dCAmJiB7IGhpbnRWaWV3LCBoaW50U2l6ZSB9KX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHsoaGFzT3V0ZXJMYWJlbCB8fCB0aXRsZUNhcHRpb24pICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDxPdXRlckxhYmVsV3JhcHBlciBpc0lubmVyTGFiZWw9e2xhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzT3V0ZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbmRpY2F0b3JXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExhYmVsIGlkPXtsYWJlbElkfSBodG1sRm9yPXtpZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lubmVyTGFiZWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGFiZWw+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoaW50VGV4dCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SGludENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaW50Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUZXh0PXtoaW50VGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUcmlnZ2VyPXtoaW50VHJpZ2dlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSGludFZpc2libGU9e2lzSGludFZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VGFyZ2V0SWNvbj17aGludFRhcmdldEljb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50UGxhY2VtZW50PXtoaW50UGxhY2VtZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludEhhc0Fycm93PXtoaW50SGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50T2Zmc2V0PXtoaW50T2Zmc2V0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFdpZHRoPXtoaW50V2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQ9e2hpbnRDb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRTaG93PXtoYW5kbGVIaW50U2hvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRIaWRlPXtoYW5kbGVIaW50SGlkZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkSGludFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3JlcXVpcmVkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzLm91dGVyTGFiZWxQbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFBsYWNlbWVudENsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzSGludENsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dE5vZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkSW5kaWNhdG9yV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt0aXRsZUNhcHRpb24gJiYgPFRpdGxlQ2FwdGlvbj57dGl0bGVDYXB0aW9ufTwvVGl0bGVDYXB0aW9uPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvT3V0ZXJMYWJlbFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbnB1dFdyYXBwZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlZiDQtNC70Y8g0LLQvdGD0YLRgNC10L3QvdC10LPQviDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjRjy4g0J3QtSDQvtGC0LTQsNC10YLRgdGPINC90LDRgNGD0LbRgy5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17KHJlc3QgYXMgYW55KS5pbnB1dFdyYXBwZXJSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBUT0RPOiAjMTU0NCwg0Lgg0L/QvtGB0LvQtSDRg9Cx0YDQsNGC0YwgY2xhc3Nlcy5pbnB1dFdyYXBwZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aEhhc0NoaXBzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdyYXBwZXJXaXRob3V0TGVmdENvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd3JhcHBlcldpdGhvdXRSaWdodENvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcy5pbnB1dFdyYXBwZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyZXF1aXJlZCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChjbGFzc2VzLmlubmVyTGFiZWxQbGFjZW1lbnQsIHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2hpbnRUZXh0ICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRIaW50V3JhcHBlciBjbGFzc05hbWU9e2NsYXNzZXMuaW5uZXJMYWJlbFBsYWNlbWVudH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhpbnRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaW50Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRleHQ9e2hpbnRUZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VHJpZ2dlcj17aGludFRyaWdnZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSGludFZpc2libGU9e2lzSGludFZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uPXtoaW50VGFyZ2V0SWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFBsYWNlbWVudD17aGludFBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludEhhc0Fycm93PXtoaW50SGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQ9e2hpbnRPZmZzZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRXaWR0aD17aGludFdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQ9e2hpbnRDb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludFNob3c9e2hhbmRsZUhpbnRTaG93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50SGlkZT17aGFuZGxlSGludEhpZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHtjb250ZW50TGVmdCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRMZWZ0IGlzQ2xlYXI9e2NsZWFyfSBpc0RlZmF1bHRWaWV3PXtpc0RlZmF1bHRWaWV3fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2NvbnRlbnRMZWZ0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudExlZnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0TGFiZWxXcmFwcGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFiSW5kZXg9ey0xfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17Y29udGVudFJlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbktleURvd249e2hhbmRsZUNvbnRlbnRLZXlEb3dufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17d2l0aEhhc0NoaXBzfVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt0ZXh0QmVmb3JlICYmIDxTdHlsZWRUZXh0QmVmb3JlPnt0ZXh0QmVmb3JlfTwvU3R5bGVkVGV4dEJlZm9yZT59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2lzQ2hpcEVudW1lcmF0aW9uICYmIEJvb2xlYW4oY2hpcHM/Lmxlbmd0aCkgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkQ2hpcHM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Y2hpcHM/Lm1hcCgoeyBpZDogY2hpcElkLCB0ZXh0IH0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRleHRGaWVsZENoaXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtjaGlwSWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9eyhlbGVtZW50KSA9PiBnZXRSZWYoZWxlbWVudCwgaW5kZXgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtgJHtjaGlwSWR9XyR7aW5kZXh9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXt0ZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dD17dGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bj17KGV2ZW50KSA9PiBoYW5kbGVDaGlwS2V5RG93bihldmVudCwgY2hpcElkLCBpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsZWFyPXsoKSA9PiBvbkNoaXBDbGVhcihjaGlwSWQsIGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ2hpcENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVE9ETzogIzE1NDdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9mb3JjZUNoaXBNYW5pcHVsYXRpb25XaXRoUmVhZG9ubHk9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bmRlcnNjb3JlLWRhbmdsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZXN0IGFzIGFueSkuX2ZvcmNlQ2hpcE1hbmlwdWxhdGlvbldpdGhSZWFkb25seVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRDaGlwcz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2lucHV0Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtpbm5lcklkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e291dGVyVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e2xhYmVsSWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PXtoZWxwZXJUZXh0SWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17aW5uZXJQbGFjZWhvbGRlclZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChoYXNWYWx1ZUNsYXNzKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXshZGlzYWJsZWQgJiYgcmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbklucHV0PXtoYW5kbGVJbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbktleURvd249e2hhbmRsZU9uS2V5RG93bn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsuLi5yZXN0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzSW5uZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGFiZWwgaWQ9e2xhYmVsSWR9IGh0bWxGb3I9e2lubmVySWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbm5lckxhYmVsVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dE5vZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGxhY2Vob2xkZXJTaG93biAmJiAhaGFzVmFsdWUgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0UGxhY2Vob2xkZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lubmVyUGxhY2Vob2xkZXJWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzUGxhY2Vob2xkZXJPcHRpb25hbCAmJiBvcHRpb25hbFRleHROb2RlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dFBsYWNlaG9sZGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSW5wdXRDb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3RleHRBZnRlciAmJiA8U3R5bGVkVGV4dEFmdGVyPnt0ZXh0QWZ0ZXJ9PC9TdHlsZWRUZXh0QWZ0ZXI+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dExhYmVsV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtjb250ZW50UmlnaHQgJiYgPFN0eWxlZENvbnRlbnRSaWdodD57Y29udGVudFJpZ2h0fTwvU3R5bGVkQ29udGVudFJpZ2h0Pn1cbiAgICAgICAgICAgICAgICAgICAgPC9JbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIHtsZWZ0SGVscGVyICYmIDxMZWZ0SGVscGVyIGlkPXtoZWxwZXJUZXh0SWR9PntsZWZ0SGVscGVyfTwvTGVmdEhlbHBlcj59XG4gICAgICAgICAgICAgICAgPC9Sb290PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICApO1xuXG5leHBvcnQgY29uc3QgdGV4dEZpZWxkQ29uZmlnID0ge1xuICAgIG5hbWU6ICdUZXh0RmllbGQnLFxuICAgIHRhZzogJ2RpdicsXG4gICAgbGF5b3V0OiB0ZXh0RmllbGRSb290LFxuICAgIGJhc2UsXG4gICAgdmFyaWF0aW9uczoge1xuICAgICAgICB2aWV3OiB7XG4gICAgICAgICAgICBjc3M6IHZpZXdDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIGNzczogc2l6ZUNTUyxcbiAgICAgICAgfSxcbiAgICAgICAgY2xlYXI6IHtcbiAgICAgICAgICAgIGNzczogY2xlYXJDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgZGlzYWJsZWQ6IHtcbiAgICAgICAgICAgIGNzczogZGlzYWJsZWRDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVhZE9ubHk6IHtcbiAgICAgICAgICAgIGNzczogcmVhZE9ubHlDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgbGFiZWxQbGFjZW1lbnQ6IHtcbiAgICAgICAgICAgIGNzczogbGFiZWxQbGFjZW1lbnRDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIGhpbnRWaWV3OiB7XG4gICAgICAgICAgICBjc3M6IGhpbnRWaWV3Q1NTLFxuICAgICAgICB9LFxuICAgICAgICBoaW50U2l6ZToge1xuICAgICAgICAgICAgY3NzOiBoaW50U2l6ZUNTUyxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmF1bHRzOiB7XG4gICAgICAgIHNpemU6ICdtJyxcbiAgICAgICAgdmlldzogJ2RlZmF1bHQnLFxuICAgIH0sXG59O1xuIl19 */",
38
38
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
39
39
  };
40
40
  var HINT_DEFAULT_OFFSET = [0, 0];
@@ -277,8 +277,10 @@ export var textFieldRoot = function textFieldRoot(Root) {
277
277
  }), optionalTextNode), titleCaption && /*#__PURE__*/React.createElement(TitleCaption, null, titleCaption)), /*#__PURE__*/React.createElement(InputWrapper
278
278
  // Ref для внутреннего использования. Не отдается наружу.
279
279
  , {
280
- ref: rest.inputWrapperRef,
281
- className: cx(withHasChips, wrapperWithoutLeftContent, wrapperWithoutRightContent)
280
+ ref: rest.inputWrapperRef
281
+ // TODO: #1544, и после убрать classes.inputWrapper
282
+ ,
283
+ className: cx(withHasChips, wrapperWithoutLeftContent, wrapperWithoutRightContent, classes.inputWrapper)
282
284
  }, !hasOuterLabel && /*#__PURE__*/React.createElement(React.Fragment, null, required && /*#__PURE__*/React.createElement(StyledIndicator, {
283
285
  className: cx(classes.innerLabelPlacement, requiredPlacementClass)
284
286
  }), hintText && /*#__PURE__*/React.createElement(StyledHintWrapper, {
@@ -325,6 +327,13 @@ export var textFieldRoot = function textFieldRoot(Root) {
325
327
  return onChipClear(chipId, index);
326
328
  },
327
329
  onClick: onChipClick
330
+ // TODO: #1547
331
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
332
+ // @ts-ignore
333
+ ,
334
+ _forceChipManipulationWithReadonly:
335
+ // eslint-disable-next-line no-underscore-dangle
336
+ rest._forceChipManipulationWithReadonly
328
337
  });
329
338
  })), /*#__PURE__*/React.createElement(InputContainer, null, /*#__PURE__*/React.createElement(Input, _extends({
330
339
  ref: inputForkRef,