@1money/component-ui 0.0.49 → 0.0.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1781) hide show
  1. package/es/components/Accordion/Accordion.d.ts +4 -0
  2. package/es/components/Accordion/Accordion.js +98 -0
  3. package/es/components/Accordion/constants.d.ts +16 -0
  4. package/es/components/Accordion/constants.js +17 -0
  5. package/es/components/Accordion/index.d.ts +4 -0
  6. package/es/components/Accordion/index.js +5 -0
  7. package/es/components/Accordion/interface.d.ts +29 -0
  8. package/es/components/Accordion/interface.js +2 -0
  9. package/es/components/Accordion/style/Accordion.css +94 -0
  10. package/es/components/Accordion/style/css.js +2 -0
  11. package/es/components/Accordion/style/index.d.ts +1 -0
  12. package/es/components/Accordion/style/index.js +2 -0
  13. package/es/components/Alert/Alert.d.ts +6 -0
  14. package/es/components/Alert/Alert.js +111 -0
  15. package/es/components/Alert/index.d.ts +4 -0
  16. package/es/components/Alert/index.js +5 -0
  17. package/es/components/Alert/interface.d.ts +42 -0
  18. package/es/components/Alert/interface.js +6 -0
  19. package/es/components/Alert/style/Alert.css +101 -0
  20. package/es/components/Alert/style/css.js +3 -0
  21. package/es/components/Alert/style/index.d.ts +2 -0
  22. package/es/components/Alert/style/index.js +3 -0
  23. package/es/components/Button/Button.d.ts +4 -0
  24. package/es/components/Button/Button.js +149 -0
  25. package/es/components/Button/constants.d.ts +70 -0
  26. package/es/components/Button/constants.js +90 -0
  27. package/es/components/Button/index.d.ts +5 -0
  28. package/es/components/Button/index.js +6 -0
  29. package/es/components/Button/interface.d.ts +23 -0
  30. package/es/components/Button/interface.js +2 -0
  31. package/es/components/Button/style/Button.css +178 -0
  32. package/es/components/Button/style/css.js +2 -0
  33. package/es/components/Button/style/index.d.ts +1 -0
  34. package/es/components/Button/style/index.js +2 -0
  35. package/es/components/Calendar/Calendar.d.ts +7 -0
  36. package/es/components/Calendar/Calendar.js +127 -0
  37. package/es/components/Calendar/index.d.ts +4 -0
  38. package/es/components/Calendar/index.js +5 -0
  39. package/es/components/Calendar/interface.d.ts +29 -0
  40. package/es/components/Calendar/interface.js +2 -0
  41. package/es/components/Calendar/style/Calendar.css +400 -0
  42. package/es/components/Calendar/style/css.js +2 -0
  43. package/es/components/Calendar/style/index.d.ts +1 -0
  44. package/es/components/Calendar/style/index.js +2 -0
  45. package/es/components/Carousel/Carousel.d.ts +6 -0
  46. package/es/components/Carousel/Carousel.js +46 -0
  47. package/es/components/Carousel/index.d.ts +4 -0
  48. package/es/components/Carousel/index.js +5 -0
  49. package/es/components/Carousel/interface.d.ts +15 -0
  50. package/es/components/Carousel/interface.js +2 -0
  51. package/es/components/Carousel/style/Carousel.css +57 -0
  52. package/es/components/Carousel/style/css.js +2 -0
  53. package/es/components/Carousel/style/index.d.ts +1 -0
  54. package/es/components/Carousel/style/index.js +2 -0
  55. package/es/components/Cell/Cell.d.ts +5 -0
  56. package/es/components/Cell/Cell.js +57 -0
  57. package/es/components/Cell/index.d.ts +4 -0
  58. package/es/components/Cell/index.js +5 -0
  59. package/es/components/Cell/interface.d.ts +12 -0
  60. package/es/components/Cell/interface.js +2 -0
  61. package/es/components/Cell/style/Cell.css +80 -0
  62. package/es/components/Cell/style/css.js +2 -0
  63. package/es/components/Cell/style/index.d.ts +1 -0
  64. package/es/components/Cell/style/index.js +2 -0
  65. package/es/components/Checkbox/BaseCheckbox.d.ts +6 -0
  66. package/es/components/Checkbox/BaseCheckbox.js +84 -0
  67. package/es/components/Checkbox/Checkbox.d.ts +6 -0
  68. package/es/components/Checkbox/Checkbox.js +122 -0
  69. package/es/components/Checkbox/CheckboxGroup.d.ts +5 -0
  70. package/es/components/Checkbox/CheckboxGroup.js +141 -0
  71. package/es/components/Checkbox/CheckboxGroupContext.d.ts +14 -0
  72. package/es/components/Checkbox/CheckboxGroupContext.js +3 -0
  73. package/es/components/Checkbox/constants.d.ts +17 -0
  74. package/es/components/Checkbox/constants.js +17 -0
  75. package/es/components/Checkbox/index.d.ts +10 -0
  76. package/es/components/Checkbox/index.js +11 -0
  77. package/es/components/Checkbox/interface.d.ts +77 -0
  78. package/es/components/Checkbox/interface.js +2 -0
  79. package/es/components/Checkbox/style/Checkbox.css +191 -0
  80. package/es/components/Checkbox/style/css.js +2 -0
  81. package/es/components/Checkbox/style/index.d.ts +1 -0
  82. package/es/components/Checkbox/style/index.js +2 -0
  83. package/es/components/CoachMark/CoachMark.d.ts +4 -0
  84. package/es/components/CoachMark/CoachMark.js +142 -0
  85. package/es/components/CoachMark/index.d.ts +4 -0
  86. package/es/components/CoachMark/index.js +5 -0
  87. package/es/components/CoachMark/interface.d.ts +47 -0
  88. package/es/components/CoachMark/interface.js +2 -0
  89. package/es/components/CoachMark/style/CoachMark.css +156 -0
  90. package/es/components/CoachMark/style/css.js +5 -0
  91. package/es/components/CoachMark/style/index.d.ts +4 -0
  92. package/es/components/CoachMark/style/index.js +5 -0
  93. package/es/components/Copy/Clipboard.d.ts +4 -0
  94. package/es/components/Copy/Clipboard.js +44 -0
  95. package/es/components/Copy/Copy.d.ts +4 -0
  96. package/es/components/Copy/Copy.js +81 -0
  97. package/es/components/Copy/index.d.ts +5 -0
  98. package/es/components/Copy/index.js +6 -0
  99. package/es/components/Copy/interface.d.ts +38 -0
  100. package/es/components/Copy/interface.js +2 -0
  101. package/es/components/Copy/style/Clipboard.css +45 -0
  102. package/es/components/Copy/style/Copy.css +48 -0
  103. package/es/components/Copy/style/css.js +3 -0
  104. package/es/components/Copy/style/index.d.ts +2 -0
  105. package/es/components/Copy/style/index.js +3 -0
  106. package/es/components/Dialog/Dialog.d.ts +4 -0
  107. package/es/components/Dialog/Dialog.js +361 -0
  108. package/es/components/Dialog/constants.d.ts +57 -0
  109. package/es/components/Dialog/constants.js +54 -0
  110. package/es/components/Dialog/index.d.ts +4 -0
  111. package/es/components/Dialog/index.js +5 -0
  112. package/es/components/Dialog/interface.d.ts +36 -0
  113. package/es/components/Dialog/interface.js +2 -0
  114. package/es/components/Dialog/style/Dialog.css +204 -0
  115. package/es/components/Dialog/style/css.js +2 -0
  116. package/es/components/Dialog/style/index.d.ts +1 -0
  117. package/es/components/Dialog/style/index.js +2 -0
  118. package/es/components/Divider/Divider.d.ts +4 -0
  119. package/es/components/Divider/Divider.js +50 -0
  120. package/es/components/Divider/constants.d.ts +36 -0
  121. package/es/components/Divider/constants.js +41 -0
  122. package/es/components/Divider/index.d.ts +4 -0
  123. package/es/components/Divider/index.js +5 -0
  124. package/es/components/Divider/interface.d.ts +19 -0
  125. package/es/components/Divider/interface.js +2 -0
  126. package/es/components/Divider/style/Divider.css +128 -0
  127. package/es/components/Divider/style/css.js +2 -0
  128. package/es/components/Divider/style/index.d.ts +1 -0
  129. package/es/components/Divider/style/index.js +2 -0
  130. package/es/components/Drawer/Drawer.d.ts +4 -0
  131. package/es/components/Drawer/Drawer.js +155 -0
  132. package/es/components/Drawer/constants.d.ts +18 -0
  133. package/es/components/Drawer/constants.js +19 -0
  134. package/es/components/Drawer/hooks/index.d.ts +4 -0
  135. package/es/components/Drawer/hooks/index.js +5 -0
  136. package/es/components/Drawer/hooks/useBodyScrollLock.d.ts +1 -0
  137. package/es/components/Drawer/hooks/useBodyScrollLock.js +29 -0
  138. package/es/components/Drawer/hooks/useDialogFocus.d.ts +2 -0
  139. package/es/components/Drawer/hooks/useDialogFocus.js +22 -0
  140. package/es/components/Drawer/hooks/useDrawerTransition.d.ts +4 -0
  141. package/es/components/Drawer/hooks/useDrawerTransition.js +57 -0
  142. package/es/components/Drawer/hooks/useEscapeClose.d.ts +1 -0
  143. package/es/components/Drawer/hooks/useEscapeClose.js +16 -0
  144. package/es/components/Drawer/index.d.ts +3 -0
  145. package/es/components/Drawer/index.js +4 -0
  146. package/es/components/Drawer/interface.d.ts +79 -0
  147. package/es/components/Drawer/interface.js +2 -0
  148. package/es/components/Drawer/style/Drawer.css +145 -0
  149. package/es/components/Drawer/style/css.js +2 -0
  150. package/es/components/Drawer/style/index.d.ts +1 -0
  151. package/es/components/Drawer/style/index.js +2 -0
  152. package/es/components/Dropdown/Dropdown.d.ts +5 -0
  153. package/es/components/Dropdown/Dropdown.js +32 -0
  154. package/es/components/Dropdown/index.d.ts +3 -0
  155. package/es/components/Dropdown/index.js +4 -0
  156. package/es/components/Dropdown/interface.d.ts +8 -0
  157. package/es/components/Dropdown/interface.js +2 -0
  158. package/es/components/Dropdown/style/Dropdown.css +48 -0
  159. package/es/components/Dropdown/style/css.js +3 -0
  160. package/es/components/Dropdown/style/index.d.ts +2 -0
  161. package/es/components/Dropdown/style/index.js +3 -0
  162. package/es/components/Empty/Empty.d.ts +6 -0
  163. package/es/components/Empty/Empty.js +68 -0
  164. package/es/components/Empty/index.d.ts +4 -0
  165. package/es/components/Empty/index.js +5 -0
  166. package/es/components/Empty/interface.d.ts +11 -0
  167. package/es/components/Empty/interface.js +2 -0
  168. package/es/components/Empty/style/Empty.css +58 -0
  169. package/es/components/Empty/style/css.js +3 -0
  170. package/es/components/Empty/style/index.d.ts +2 -0
  171. package/es/components/Empty/style/index.js +3 -0
  172. package/es/components/Flex/Flex.d.ts +5 -0
  173. package/es/components/Flex/Flex.js +50 -0
  174. package/es/components/Flex/constants.d.ts +41 -0
  175. package/es/components/Flex/constants.js +45 -0
  176. package/es/components/Flex/index.d.ts +5 -0
  177. package/es/components/Flex/index.js +6 -0
  178. package/es/components/Flex/interface.d.ts +13 -0
  179. package/es/components/Flex/interface.js +2 -0
  180. package/es/components/Flex/style/Flex.css +71 -0
  181. package/es/components/Flex/style/css.js +2 -0
  182. package/es/components/Flex/style/index.d.ts +1 -0
  183. package/es/components/Flex/style/index.js +2 -0
  184. package/es/components/Grid/Col.d.ts +4 -0
  185. package/es/components/Grid/Col.js +83 -0
  186. package/es/components/Grid/Grid.d.ts +10 -0
  187. package/es/components/Grid/Grid.js +15 -0
  188. package/es/components/Grid/Row.d.ts +4 -0
  189. package/es/components/Grid/Row.js +41 -0
  190. package/es/components/Grid/constants.d.ts +48 -0
  191. package/es/components/Grid/constants.js +71 -0
  192. package/es/components/Grid/helper.d.ts +15 -0
  193. package/es/components/Grid/helper.js +87 -0
  194. package/es/components/Grid/index.d.ts +7 -0
  195. package/es/components/Grid/index.js +8 -0
  196. package/es/components/Grid/interface.d.ts +38 -0
  197. package/es/components/Grid/interface.js +2 -0
  198. package/es/components/Grid/style/Grid.css +952 -0
  199. package/es/components/Grid/style/css.js +2 -0
  200. package/es/components/Grid/style/index.d.ts +1 -0
  201. package/es/components/Grid/style/index.js +2 -0
  202. package/es/components/Icons/Icons.d.ts +194 -0
  203. package/es/components/Icons/Icons.js +194 -0
  204. package/es/components/Icons/Illustrations.d.ts +19 -0
  205. package/es/components/Icons/Illustrations.js +936 -0
  206. package/es/components/Icons/Logo.d.ts +36 -0
  207. package/es/components/Icons/Logo.js +209 -0
  208. package/es/components/Icons/SVGs.d.ts +267 -0
  209. package/es/components/Icons/SVGs.js +1928 -0
  210. package/es/components/Icons/Wrapper.d.ts +6 -0
  211. package/es/components/Icons/Wrapper.js +100 -0
  212. package/es/components/Icons/index.d.ts +4 -0
  213. package/es/components/Icons/index.js +4 -0
  214. package/es/components/Icons/interface.d.ts +30 -0
  215. package/es/components/Icons/interface.js +2 -0
  216. package/es/components/Icons/style/Icons.css +81 -0
  217. package/es/components/Icons/style/css.js +2 -0
  218. package/es/components/Icons/style/index.d.ts +1 -0
  219. package/es/components/Icons/style/index.js +2 -0
  220. package/es/components/Input/Amount/Amount.d.ts +6 -0
  221. package/es/components/Input/Amount/Amount.js +199 -0
  222. package/es/components/Input/Amount/helper.d.ts +35 -0
  223. package/es/components/Input/Amount/helper.js +95 -0
  224. package/es/components/Input/Amount/index.d.ts +3 -0
  225. package/es/components/Input/Amount/index.js +4 -0
  226. package/es/components/Input/Amount/style/Amount.css +103 -0
  227. package/es/components/Input/Amount/style/css.js +2 -0
  228. package/es/components/Input/Amount/style/index.d.ts +1 -0
  229. package/es/components/Input/Amount/style/index.js +2 -0
  230. package/es/components/Input/FieldShell/FieldShell.css +76 -0
  231. package/es/components/Input/FieldShell/FieldShell.d.ts +23 -0
  232. package/es/components/Input/FieldShell/FieldShell.js +99 -0
  233. package/es/components/Input/FieldShell/index.d.ts +3 -0
  234. package/es/components/Input/FieldShell/index.js +3 -0
  235. package/es/components/Input/Input/Input.css +124 -0
  236. package/es/components/Input/Input/Input.d.ts +3 -0
  237. package/es/components/Input/Input/Input.js +170 -0
  238. package/es/components/Input/Input/index.d.ts +2 -0
  239. package/es/components/Input/Input/index.js +3 -0
  240. package/es/components/Input/Mask/Mask.d.ts +5 -0
  241. package/es/components/Input/Mask/Mask.js +344 -0
  242. package/es/components/Input/Mask/index.d.ts +2 -0
  243. package/es/components/Input/Mask/index.js +3 -0
  244. package/es/components/Input/OTP/OTP.css +79 -0
  245. package/es/components/Input/OTP/OTP.d.ts +5 -0
  246. package/es/components/Input/OTP/OTP.js +157 -0
  247. package/es/components/Input/OTP/index.d.ts +2 -0
  248. package/es/components/Input/OTP/index.js +3 -0
  249. package/es/components/Input/Password/Password.d.ts +5 -0
  250. package/es/components/Input/Password/Password.js +128 -0
  251. package/es/components/Input/Password/index.d.ts +2 -0
  252. package/es/components/Input/Password/index.js +3 -0
  253. package/es/components/Input/Search/Search.d.ts +5 -0
  254. package/es/components/Input/Search/Search.js +151 -0
  255. package/es/components/Input/Search/index.d.ts +2 -0
  256. package/es/components/Input/Search/index.js +3 -0
  257. package/es/components/Input/TextArea/TextArea.css +93 -0
  258. package/es/components/Input/TextArea/TextArea.d.ts +5 -0
  259. package/es/components/Input/TextArea/TextArea.js +100 -0
  260. package/es/components/Input/TextArea/index.d.ts +2 -0
  261. package/es/components/Input/TextArea/index.js +3 -0
  262. package/es/components/Input/Trade/Trade.css +192 -0
  263. package/es/components/Input/Trade/Trade.d.ts +5 -0
  264. package/es/components/Input/Trade/Trade.js +133 -0
  265. package/es/components/Input/Trade/index.d.ts +2 -0
  266. package/es/components/Input/Trade/index.js +3 -0
  267. package/es/components/Input/constants.d.ts +15 -0
  268. package/es/components/Input/constants.js +16 -0
  269. package/es/components/Input/index.d.ts +4 -0
  270. package/es/components/Input/index.js +5 -0
  271. package/es/components/Input/interface.d.ts +156 -0
  272. package/es/components/Input/interface.js +2 -0
  273. package/es/components/Input/style/css.js +7 -0
  274. package/es/components/Input/style/index.d.ts +6 -0
  275. package/es/components/Input/style/index.js +7 -0
  276. package/es/components/Input/useAmountInput.d.ts +35 -0
  277. package/es/components/Input/useAmountInput.js +207 -0
  278. package/es/components/Input/useSyncRef.d.ts +2 -0
  279. package/es/components/Input/useSyncRef.js +13 -0
  280. package/es/components/Link/Link.d.ts +4 -0
  281. package/es/components/Link/Link.js +57 -0
  282. package/es/components/Link/constants.d.ts +5 -0
  283. package/es/components/Link/constants.js +6 -0
  284. package/es/components/Link/index.d.ts +5 -0
  285. package/es/components/Link/index.js +6 -0
  286. package/es/components/Link/interface.d.ts +13 -0
  287. package/es/components/Link/interface.js +2 -0
  288. package/es/components/Link/style/Link.css +70 -0
  289. package/es/components/Link/style/css.js +2 -0
  290. package/es/components/Link/style/index.d.ts +1 -0
  291. package/es/components/Link/style/index.js +2 -0
  292. package/es/components/Navigation/Nav.d.ts +5 -0
  293. package/es/components/Navigation/Nav.js +200 -0
  294. package/es/components/Navigation/Navigation.d.ts +5 -0
  295. package/es/components/Navigation/Navigation.js +299 -0
  296. package/es/components/Navigation/NavigationLogo.d.ts +8 -0
  297. package/es/components/Navigation/NavigationLogo.js +46 -0
  298. package/es/components/Navigation/NavigationStepper.d.ts +5 -0
  299. package/es/components/Navigation/NavigationStepper.js +72 -0
  300. package/es/components/Navigation/index.d.ts +6 -0
  301. package/es/components/Navigation/index.js +7 -0
  302. package/es/components/Navigation/interface.d.ts +134 -0
  303. package/es/components/Navigation/interface.js +2 -0
  304. package/es/components/Navigation/style/Nav.css +158 -0
  305. package/es/components/Navigation/style/Navigation.css +373 -0
  306. package/es/components/Navigation/style/NavigationStepper.css +97 -0
  307. package/es/components/Navigation/style/css.js +4 -0
  308. package/es/components/Navigation/style/index.d.ts +3 -0
  309. package/es/components/Navigation/style/index.js +4 -0
  310. package/es/components/Notification/Notification.d.ts +6 -0
  311. package/es/components/Notification/Notification.js +108 -0
  312. package/es/components/Notification/NotificationStatic.d.ts +4 -0
  313. package/es/components/Notification/NotificationStatic.js +501 -0
  314. package/es/components/Notification/constants.d.ts +12 -0
  315. package/es/components/Notification/constants.js +16 -0
  316. package/es/components/Notification/index.d.ts +5 -0
  317. package/es/components/Notification/index.js +5 -0
  318. package/es/components/Notification/interface.d.ts +70 -0
  319. package/es/components/Notification/interface.js +7 -0
  320. package/es/components/Notification/style/Notification.css +170 -0
  321. package/es/components/Notification/style/css.js +2 -0
  322. package/es/components/Notification/style/index.d.ts +1 -0
  323. package/es/components/Notification/style/index.js +2 -0
  324. package/es/components/Pagination/Pagination.d.ts +5 -0
  325. package/es/components/Pagination/Pagination.js +136 -0
  326. package/es/components/Pagination/constants.d.ts +52 -0
  327. package/es/components/Pagination/constants.js +55 -0
  328. package/es/components/Pagination/index.d.ts +6 -0
  329. package/es/components/Pagination/index.js +7 -0
  330. package/es/components/Pagination/interface.d.ts +53 -0
  331. package/es/components/Pagination/interface.js +2 -0
  332. package/es/components/Pagination/style/Pagination.css +89 -0
  333. package/es/components/Pagination/style/css.js +2 -0
  334. package/es/components/Pagination/style/index.d.ts +1 -0
  335. package/es/components/Pagination/style/index.js +2 -0
  336. package/es/components/Pagination/usePagination.d.ts +3 -0
  337. package/es/components/Pagination/usePagination.js +145 -0
  338. package/es/components/Popconfirm/Popconfirm.d.ts +6 -0
  339. package/es/components/Popconfirm/Popconfirm.js +144 -0
  340. package/es/components/Popconfirm/constants.d.ts +74 -0
  341. package/es/components/Popconfirm/constants.js +73 -0
  342. package/es/components/Popconfirm/index.d.ts +4 -0
  343. package/es/components/Popconfirm/index.js +5 -0
  344. package/es/components/Popconfirm/interface.d.ts +40 -0
  345. package/es/components/Popconfirm/interface.js +2 -0
  346. package/es/components/Popconfirm/style/Popconfirm.css +137 -0
  347. package/es/components/Popconfirm/style/css.js +5 -0
  348. package/es/components/Popconfirm/style/index.d.ts +4 -0
  349. package/es/components/Popconfirm/style/index.js +5 -0
  350. package/es/components/Portal/Portal.d.ts +3 -0
  351. package/es/components/Portal/Portal.js +54 -0
  352. package/es/components/Portal/index.d.ts +4 -0
  353. package/es/components/Portal/index.js +5 -0
  354. package/es/components/Portal/interface.d.ts +7 -0
  355. package/es/components/Portal/interface.js +2 -0
  356. package/es/components/ProForm/ProForm.d.ts +4 -0
  357. package/es/components/ProForm/ProForm.js +302 -0
  358. package/es/components/ProForm/ProFormDependency.d.ts +4 -0
  359. package/es/components/ProForm/ProFormDependency.js +160 -0
  360. package/es/components/ProForm/ProFormGroup.d.ts +3 -0
  361. package/es/components/ProForm/ProFormGroup.js +78 -0
  362. package/es/components/ProForm/ProFormItem.d.ts +4 -0
  363. package/es/components/ProForm/ProFormItem.js +220 -0
  364. package/es/components/ProForm/ProFormList.d.ts +3 -0
  365. package/es/components/ProForm/ProFormList.js +252 -0
  366. package/es/components/ProForm/Submitter.d.ts +6 -0
  367. package/es/components/ProForm/Submitter.js +106 -0
  368. package/es/components/ProForm/constants.d.ts +18 -0
  369. package/es/components/ProForm/constants.js +23 -0
  370. package/es/components/ProForm/context.d.ts +13 -0
  371. package/es/components/ProForm/context.js +29 -0
  372. package/es/components/ProForm/core/constants.d.ts +21 -0
  373. package/es/components/ProForm/core/constants.js +20 -0
  374. package/es/components/ProForm/core/hooks/useForm.d.ts +3 -0
  375. package/es/components/ProForm/core/hooks/useForm.js +677 -0
  376. package/es/components/ProForm/core/hooks/useFormCore.d.ts +3 -0
  377. package/es/components/ProForm/core/hooks/useFormCore.js +347 -0
  378. package/es/components/ProForm/core/index.d.ts +6 -0
  379. package/es/components/ProForm/core/index.js +6 -0
  380. package/es/components/ProForm/core/interface.d.ts +153 -0
  381. package/es/components/ProForm/core/interface.js +2 -0
  382. package/es/components/ProForm/core/useFormItem.d.ts +21 -0
  383. package/es/components/ProForm/core/useFormItem.js +173 -0
  384. package/es/components/ProForm/fields/ProFormCheckbox.d.ts +3 -0
  385. package/es/components/ProForm/fields/ProFormCheckbox.js +11 -0
  386. package/es/components/ProForm/fields/ProFormCheckboxGroup.d.ts +3 -0
  387. package/es/components/ProForm/fields/ProFormCheckboxGroup.js +12 -0
  388. package/es/components/ProForm/fields/ProFormDatePicker.d.ts +3 -0
  389. package/es/components/ProForm/fields/ProFormDatePicker.js +23 -0
  390. package/es/components/ProForm/fields/ProFormFieldSet.d.ts +4 -0
  391. package/es/components/ProForm/fields/ProFormFieldSet.js +65 -0
  392. package/es/components/ProForm/fields/ProFormPassword.d.ts +3 -0
  393. package/es/components/ProForm/fields/ProFormPassword.js +11 -0
  394. package/es/components/ProForm/fields/ProFormRadioGroup.d.ts +3 -0
  395. package/es/components/ProForm/fields/ProFormRadioGroup.js +10 -0
  396. package/es/components/ProForm/fields/ProFormSelect.d.ts +3 -0
  397. package/es/components/ProForm/fields/ProFormSelect.js +40 -0
  398. package/es/components/ProForm/fields/ProFormSlider.d.ts +3 -0
  399. package/es/components/ProForm/fields/ProFormSlider.js +10 -0
  400. package/es/components/ProForm/fields/ProFormSwitch.d.ts +3 -0
  401. package/es/components/ProForm/fields/ProFormSwitch.js +11 -0
  402. package/es/components/ProForm/fields/ProFormText.d.ts +3 -0
  403. package/es/components/ProForm/fields/ProFormText.js +10 -0
  404. package/es/components/ProForm/fields/ProFormTextArea.d.ts +3 -0
  405. package/es/components/ProForm/fields/ProFormTextArea.js +10 -0
  406. package/es/components/ProForm/fields/ProFormUpload.d.ts +3 -0
  407. package/es/components/ProForm/fields/ProFormUpload.js +25 -0
  408. package/es/components/ProForm/fields/createProFormField.d.ts +4 -0
  409. package/es/components/ProForm/fields/createProFormField.js +156 -0
  410. package/es/components/ProForm/fields/index.d.ts +13 -0
  411. package/es/components/ProForm/fields/index.js +14 -0
  412. package/es/components/ProForm/hooks/useFieldRequest.d.ts +7 -0
  413. package/es/components/ProForm/hooks/useFieldRequest.js +90 -0
  414. package/es/components/ProForm/index.d.ts +38 -0
  415. package/es/components/ProForm/index.js +55 -0
  416. package/es/components/ProForm/interface.d.ts +284 -0
  417. package/es/components/ProForm/interface.js +2 -0
  418. package/es/components/ProForm/layouts/DialogForm.d.ts +3 -0
  419. package/es/components/ProForm/layouts/DialogForm.js +74 -0
  420. package/es/components/ProForm/layouts/DrawerForm.d.ts +3 -0
  421. package/es/components/ProForm/layouts/DrawerForm.js +73 -0
  422. package/es/components/ProForm/layouts/QueryFilter.d.ts +4 -0
  423. package/es/components/ProForm/layouts/QueryFilter.js +158 -0
  424. package/es/components/ProForm/layouts/index.d.ts +4 -0
  425. package/es/components/ProForm/layouts/index.js +5 -0
  426. package/es/components/ProForm/layouts/useOverlayForm.d.ts +17 -0
  427. package/es/components/ProForm/layouts/useOverlayForm.js +107 -0
  428. package/es/components/ProForm/style/ProForm.css +168 -0
  429. package/es/components/ProForm/style/css.js +2 -0
  430. package/es/components/ProForm/style/index.d.ts +1 -0
  431. package/es/components/ProForm/style/index.js +2 -0
  432. package/es/components/ProForm/utils.d.ts +22 -0
  433. package/es/components/ProForm/utils.js +211 -0
  434. package/es/components/Progress/Progress.d.ts +6 -0
  435. package/es/components/Progress/Progress.js +94 -0
  436. package/es/components/Progress/constants.d.ts +26 -0
  437. package/es/components/Progress/constants.js +32 -0
  438. package/es/components/Progress/index.d.ts +5 -0
  439. package/es/components/Progress/index.js +6 -0
  440. package/es/components/Progress/interface.d.ts +26 -0
  441. package/es/components/Progress/interface.js +2 -0
  442. package/es/components/Progress/style/Progress.css +103 -0
  443. package/es/components/Progress/style/css.js +2 -0
  444. package/es/components/Progress/style/index.d.ts +1 -0
  445. package/es/components/Progress/style/index.js +2 -0
  446. package/es/components/Radio/BaseRadio.d.ts +16 -0
  447. package/es/components/Radio/BaseRadio.js +58 -0
  448. package/es/components/Radio/Radio.d.ts +6 -0
  449. package/es/components/Radio/Radio.js +182 -0
  450. package/es/components/Radio/RadioGroup.d.ts +5 -0
  451. package/es/components/Radio/RadioGroup.js +102 -0
  452. package/es/components/Radio/RadioGroupContext.d.ts +22 -0
  453. package/es/components/Radio/RadioGroupContext.js +7 -0
  454. package/es/components/Radio/constants.d.ts +39 -0
  455. package/es/components/Radio/constants.js +57 -0
  456. package/es/components/Radio/index.d.ts +5 -0
  457. package/es/components/Radio/index.js +6 -0
  458. package/es/components/Radio/interface.d.ts +122 -0
  459. package/es/components/Radio/interface.js +2 -0
  460. package/es/components/Radio/style/Radio.css +362 -0
  461. package/es/components/Radio/style/css.js +3 -0
  462. package/es/components/Radio/style/index.d.ts +2 -0
  463. package/es/components/Radio/style/index.js +3 -0
  464. package/es/components/ResizeObserver/Collection.d.ts +19 -0
  465. package/es/components/ResizeObserver/Collection.js +41 -0
  466. package/es/components/ResizeObserver/ResizeObserver.d.ts +7 -0
  467. package/es/components/ResizeObserver/ResizeObserver.js +31 -0
  468. package/es/components/ResizeObserver/SingleObserver/index.d.ts +7 -0
  469. package/es/components/ResizeObserver/SingleObserver/index.js +38 -0
  470. package/es/components/ResizeObserver/index.d.ts +7 -0
  471. package/es/components/ResizeObserver/index.js +6 -0
  472. package/es/components/ResizeObserver/interface.d.ts +16 -0
  473. package/es/components/ResizeObserver/interface.js +2 -0
  474. package/es/components/ResizeObserver/useResizeObserver.d.ts +2 -0
  475. package/es/components/ResizeObserver/useResizeObserver.js +70 -0
  476. package/es/components/ResizeObserver/utils/observerUtil.d.ts +7 -0
  477. package/es/components/ResizeObserver/utils/observerUtil.js +39 -0
  478. package/es/components/ResizeObserver/utils/reactUtil.d.ts +19 -0
  479. package/es/components/ResizeObserver/utils/reactUtil.js +78 -0
  480. package/es/components/Segment/Segment.d.ts +6 -0
  481. package/es/components/Segment/Segment.js +100 -0
  482. package/es/components/Segment/index.d.ts +4 -0
  483. package/es/components/Segment/index.js +5 -0
  484. package/es/components/Segment/interface.d.ts +23 -0
  485. package/es/components/Segment/interface.js +2 -0
  486. package/es/components/Segment/style/Segment.css +79 -0
  487. package/es/components/Segment/style/css.js +2 -0
  488. package/es/components/Segment/style/index.d.ts +1 -0
  489. package/es/components/Segment/style/index.js +2 -0
  490. package/es/components/Select/Select.d.ts +6 -0
  491. package/es/components/Select/Select.js +563 -0
  492. package/es/components/Select/SelectCustom.d.ts +6 -0
  493. package/es/components/Select/SelectCustom.js +232 -0
  494. package/es/components/Select/SelectFieldShell.d.ts +24 -0
  495. package/es/components/Select/SelectFieldShell.js +81 -0
  496. package/es/components/Select/SelectOptionContent.d.ts +17 -0
  497. package/es/components/Select/SelectOptionContent.js +45 -0
  498. package/es/components/Select/SelectSearchControl.d.ts +15 -0
  499. package/es/components/Select/SelectSearchControl.js +43 -0
  500. package/es/components/Select/SelectValueContent.d.ts +18 -0
  501. package/es/components/Select/SelectValueContent.js +99 -0
  502. package/es/components/Select/constants.d.ts +45 -0
  503. package/es/components/Select/constants.js +43 -0
  504. package/es/components/Select/index.d.ts +7 -0
  505. package/es/components/Select/index.js +10 -0
  506. package/es/components/Select/interface.d.ts +229 -0
  507. package/es/components/Select/interface.js +4 -0
  508. package/es/components/Select/style/Select.css +468 -0
  509. package/es/components/Select/style/css.js +4 -0
  510. package/es/components/Select/style/index.d.ts +3 -0
  511. package/es/components/Select/style/index.js +4 -0
  512. package/es/components/Select/useSelectShell.d.ts +34 -0
  513. package/es/components/Select/useSelectShell.js +106 -0
  514. package/es/components/Select/utils.d.ts +21 -0
  515. package/es/components/Select/utils.js +140 -0
  516. package/es/components/Skeleton/Skeleton.d.ts +6 -0
  517. package/es/components/Skeleton/Skeleton.js +49 -0
  518. package/es/components/Skeleton/index.d.ts +4 -0
  519. package/es/components/Skeleton/index.js +5 -0
  520. package/es/components/Skeleton/interface.d.ts +19 -0
  521. package/es/components/Skeleton/interface.js +2 -0
  522. package/es/components/Skeleton/style/Skeleton.css +54 -0
  523. package/es/components/Skeleton/style/css.js +2 -0
  524. package/es/components/Skeleton/style/index.d.ts +1 -0
  525. package/es/components/Skeleton/style/index.js +2 -0
  526. package/es/components/Slider/Slider.d.ts +6 -0
  527. package/es/components/Slider/Slider.js +117 -0
  528. package/es/components/Slider/index.d.ts +4 -0
  529. package/es/components/Slider/index.js +5 -0
  530. package/es/components/Slider/interface.d.ts +39 -0
  531. package/es/components/Slider/interface.js +2 -0
  532. package/es/components/Slider/style/Slider.css +161 -0
  533. package/es/components/Slider/style/css.js +2 -0
  534. package/es/components/Slider/style/index.d.ts +1 -0
  535. package/es/components/Slider/style/index.js +2 -0
  536. package/es/components/Space/Space.d.ts +5 -0
  537. package/es/components/Space/Space.js +78 -0
  538. package/es/components/Space/constants.d.ts +33 -0
  539. package/es/components/Space/constants.js +37 -0
  540. package/es/components/Space/index.d.ts +5 -0
  541. package/es/components/Space/index.js +6 -0
  542. package/es/components/Space/interface.d.ts +12 -0
  543. package/es/components/Space/interface.js +2 -0
  544. package/es/components/Space/style/Space.css +47 -0
  545. package/es/components/Space/style/css.js +2 -0
  546. package/es/components/Space/style/index.d.ts +1 -0
  547. package/es/components/Space/style/index.js +2 -0
  548. package/es/components/Spinner/Spinner.d.ts +6 -0
  549. package/es/components/Spinner/Spinner.js +219 -0
  550. package/es/components/Spinner/index.d.ts +4 -0
  551. package/es/components/Spinner/index.js +5 -0
  552. package/es/components/Spinner/interface.d.ts +18 -0
  553. package/es/components/Spinner/interface.js +2 -0
  554. package/es/components/Spinner/lottie-pure.json +1 -0
  555. package/es/components/Spinner/style/Spinner.css +99 -0
  556. package/es/components/Spinner/style/css.js +2 -0
  557. package/es/components/Spinner/style/index.d.ts +1 -0
  558. package/es/components/Spinner/style/index.js +2 -0
  559. package/es/components/Step/Step.d.ts +5 -0
  560. package/es/components/Step/Step.js +116 -0
  561. package/es/components/Step/constants.d.ts +59 -0
  562. package/es/components/Step/constants.js +65 -0
  563. package/es/components/Step/index.d.ts +4 -0
  564. package/es/components/Step/index.js +5 -0
  565. package/es/components/Step/interface.d.ts +22 -0
  566. package/es/components/Step/interface.js +2 -0
  567. package/es/components/Step/style/Step.css +107 -0
  568. package/es/components/Step/style/css.js +2 -0
  569. package/es/components/Step/style/index.d.ts +1 -0
  570. package/es/components/Step/style/index.js +2 -0
  571. package/es/components/Switch/Switch.d.ts +6 -0
  572. package/es/components/Switch/Switch.js +94 -0
  573. package/es/components/Switch/constants.d.ts +25 -0
  574. package/es/components/Switch/constants.js +27 -0
  575. package/es/components/Switch/index.d.ts +5 -0
  576. package/es/components/Switch/index.js +6 -0
  577. package/es/components/Switch/interface.d.ts +26 -0
  578. package/es/components/Switch/interface.js +2 -0
  579. package/es/components/Switch/style/Switch.css +102 -0
  580. package/es/components/Switch/style/css.js +3 -0
  581. package/es/components/Switch/style/index.d.ts +2 -0
  582. package/es/components/Switch/style/index.js +3 -0
  583. package/es/components/Table/Table.d.ts +10 -0
  584. package/es/components/Table/Table.js +41 -0
  585. package/es/components/Table/VirtualTable.d.ts +9 -0
  586. package/es/components/Table/VirtualTable.js +53 -0
  587. package/es/components/Table/constants.d.ts +4 -0
  588. package/es/components/Table/constants.js +5 -0
  589. package/es/components/Table/core/useTableColumns.d.ts +48 -0
  590. package/es/components/Table/core/useTableColumns.js +253 -0
  591. package/es/components/Table/core/useTableDataPipeline.d.ts +57 -0
  592. package/es/components/Table/core/useTableDataPipeline.js +428 -0
  593. package/es/components/Table/core/useTableExpand.d.ts +11 -0
  594. package/es/components/Table/core/useTableExpand.js +63 -0
  595. package/es/components/Table/core/useTableSelection.d.ts +15 -0
  596. package/es/components/Table/core/useTableSelection.js +144 -0
  597. package/es/components/Table/core/useTableSetup.d.ts +42 -0
  598. package/es/components/Table/core/useTableSetup.js +195 -0
  599. package/es/components/Table/features/ExpandTrigger.d.ts +4 -0
  600. package/es/components/Table/features/ExpandTrigger.js +32 -0
  601. package/es/components/Table/features/FilterTrigger.d.ts +9 -0
  602. package/es/components/Table/features/FilterTrigger.js +157 -0
  603. package/es/components/Table/features/SelectionColumn.d.ts +12 -0
  604. package/es/components/Table/features/SelectionColumn.js +54 -0
  605. package/es/components/Table/features/SortTrigger.d.ts +7 -0
  606. package/es/components/Table/features/SortTrigger.js +26 -0
  607. package/es/components/Table/index.d.ts +6 -0
  608. package/es/components/Table/index.js +7 -0
  609. package/es/components/Table/interface.d.ts +262 -0
  610. package/es/components/Table/interface.js +2 -0
  611. package/es/components/Table/internal/index.d.ts +3 -0
  612. package/es/components/Table/internal/index.js +3 -0
  613. package/es/components/Table/internal/kernel/Body/BodyRow.d.ts +37 -0
  614. package/es/components/Table/internal/kernel/Body/BodyRow.js +174 -0
  615. package/es/components/Table/internal/kernel/Body/ExpandedRow.d.ts +15 -0
  616. package/es/components/Table/internal/kernel/Body/ExpandedRow.js +56 -0
  617. package/es/components/Table/internal/kernel/Body/MeasureCell.d.ts +8 -0
  618. package/es/components/Table/internal/kernel/Body/MeasureCell.js +39 -0
  619. package/es/components/Table/internal/kernel/Body/MeasureRow.d.ts +10 -0
  620. package/es/components/Table/internal/kernel/Body/MeasureRow.js +53 -0
  621. package/es/components/Table/internal/kernel/Body/index.d.ts +9 -0
  622. package/es/components/Table/internal/kernel/Body/index.js +124 -0
  623. package/es/components/Table/internal/kernel/Cell/index.d.ts +39 -0
  624. package/es/components/Table/internal/kernel/Cell/index.js +179 -0
  625. package/es/components/Table/internal/kernel/Cell/useCellRender.d.ts +3 -0
  626. package/es/components/Table/internal/kernel/Cell/useCellRender.js +63 -0
  627. package/es/components/Table/internal/kernel/Cell/useHoverState.d.ts +2 -0
  628. package/es/components/Table/internal/kernel/Cell/useHoverState.js +15 -0
  629. package/es/components/Table/internal/kernel/ColGroup.d.ts +8 -0
  630. package/es/components/Table/internal/kernel/ColGroup.js +56 -0
  631. package/es/components/Table/internal/kernel/FixedHolder/index.d.ts +27 -0
  632. package/es/components/Table/internal/kernel/FixedHolder/index.js +180 -0
  633. package/es/components/Table/internal/kernel/Footer/Cell.d.ts +11 -0
  634. package/es/components/Table/internal/kernel/Footer/Cell.js +50 -0
  635. package/es/components/Table/internal/kernel/Footer/Row.d.ts +8 -0
  636. package/es/components/Table/internal/kernel/Footer/Row.js +20 -0
  637. package/es/components/Table/internal/kernel/Footer/Summary.d.ts +14 -0
  638. package/es/components/Table/internal/kernel/Footer/Summary.js +13 -0
  639. package/es/components/Table/internal/kernel/Footer/SummaryContext.d.ts +11 -0
  640. package/es/components/Table/internal/kernel/Footer/SummaryContext.js +4 -0
  641. package/es/components/Table/internal/kernel/Footer/index.d.ts +16 -0
  642. package/es/components/Table/internal/kernel/Footer/index.js +36 -0
  643. package/es/components/Table/internal/kernel/Header/Header.d.ts +9 -0
  644. package/es/components/Table/internal/kernel/Header/Header.js +109 -0
  645. package/es/components/Table/internal/kernel/Header/HeaderRow.d.ts +18 -0
  646. package/es/components/Table/internal/kernel/Header/HeaderRow.js +60 -0
  647. package/es/components/Table/internal/kernel/Panel/index.d.ts +7 -0
  648. package/es/components/Table/internal/kernel/Panel/index.js +15 -0
  649. package/es/components/Table/internal/kernel/Table.d.ts +126 -0
  650. package/es/components/Table/internal/kernel/Table.js +686 -0
  651. package/es/components/Table/internal/kernel/VirtualTable/BodyGrid.d.ts +13 -0
  652. package/es/components/Table/internal/kernel/VirtualTable/BodyGrid.js +286 -0
  653. package/es/components/Table/internal/kernel/VirtualTable/BodyLine.d.ts +14 -0
  654. package/es/components/Table/internal/kernel/VirtualTable/BodyLine.js +113 -0
  655. package/es/components/Table/internal/kernel/VirtualTable/VirtualCell.d.ts +26 -0
  656. package/es/components/Table/internal/kernel/VirtualTable/VirtualCell.js +105 -0
  657. package/es/components/Table/internal/kernel/VirtualTable/context.d.ts +13 -0
  658. package/es/components/Table/internal/kernel/VirtualTable/context.js +5 -0
  659. package/es/components/Table/internal/kernel/VirtualTable/index.d.ts +17 -0
  660. package/es/components/Table/internal/kernel/VirtualTable/index.js +90 -0
  661. package/es/components/Table/internal/kernel/constant.d.ts +2 -0
  662. package/es/components/Table/internal/kernel/constant.js +4 -0
  663. package/es/components/Table/internal/kernel/context/PerfContext.d.ts +6 -0
  664. package/es/components/Table/internal/kernel/context/PerfContext.js +8 -0
  665. package/es/components/Table/internal/kernel/context/TableContext.d.ts +51 -0
  666. package/es/components/Table/internal/kernel/context/TableContext.js +10 -0
  667. package/es/components/Table/internal/kernel/hooks/useColumns/index.d.ts +31 -0
  668. package/es/components/Table/internal/kernel/hooks/useColumns/index.js +210 -0
  669. package/es/components/Table/internal/kernel/hooks/useColumns/useWidthColumns.d.ts +5 -0
  670. package/es/components/Table/internal/kernel/hooks/useColumns/useWidthColumns.js +69 -0
  671. package/es/components/Table/internal/kernel/hooks/useExpand.d.ts +10 -0
  672. package/es/components/Table/internal/kernel/hooks/useExpand.js +83 -0
  673. package/es/components/Table/internal/kernel/hooks/useFixedInfo.d.ts +2 -0
  674. package/es/components/Table/internal/kernel/hooks/useFixedInfo.js +18 -0
  675. package/es/components/Table/internal/kernel/hooks/useFlattenRecords.d.ts +19 -0
  676. package/es/components/Table/internal/kernel/hooks/useFlattenRecords.js +54 -0
  677. package/es/components/Table/internal/kernel/hooks/useFrame.d.ts +7 -0
  678. package/es/components/Table/internal/kernel/hooks/useFrame.js +63 -0
  679. package/es/components/Table/internal/kernel/hooks/useHover.d.ts +2 -0
  680. package/es/components/Table/internal/kernel/hooks/useHover.js +19 -0
  681. package/es/components/Table/internal/kernel/hooks/useRenderTimes.d.ts +5 -0
  682. package/es/components/Table/internal/kernel/hooks/useRenderTimes.js +41 -0
  683. package/es/components/Table/internal/kernel/hooks/useRowInfo.d.ts +11 -0
  684. package/es/components/Table/internal/kernel/hooks/useRowInfo.js +62 -0
  685. package/es/components/Table/internal/kernel/hooks/useSticky.d.ts +10 -0
  686. package/es/components/Table/internal/kernel/hooks/useSticky.js +33 -0
  687. package/es/components/Table/internal/kernel/hooks/useStickyOffsets.d.ts +6 -0
  688. package/es/components/Table/internal/kernel/hooks/useStickyOffsets.js +31 -0
  689. package/es/components/Table/internal/kernel/index.d.ts +12 -0
  690. package/es/components/Table/internal/kernel/index.js +11 -0
  691. package/es/components/Table/internal/kernel/interface.d.ts +202 -0
  692. package/es/components/Table/internal/kernel/interface.js +2 -0
  693. package/es/components/Table/internal/kernel/namePathType.d.ts +13 -0
  694. package/es/components/Table/internal/kernel/namePathType.js +3 -0
  695. package/es/components/Table/internal/kernel/selector-context/Immutable.d.ts +10 -0
  696. package/es/components/Table/internal/kernel/selector-context/Immutable.js +73 -0
  697. package/es/components/Table/internal/kernel/selector-context/context.d.ts +26 -0
  698. package/es/components/Table/internal/kernel/selector-context/context.js +83 -0
  699. package/es/components/Table/internal/kernel/selector-context/index.d.ts +7 -0
  700. package/es/components/Table/internal/kernel/selector-context/index.js +9 -0
  701. package/es/components/Table/internal/kernel/selector-context/isEqual.d.ts +5 -0
  702. package/es/components/Table/internal/kernel/selector-context/isEqual.js +48 -0
  703. package/es/components/Table/internal/kernel/stickyScrollBar.d.ts +12 -0
  704. package/es/components/Table/internal/kernel/stickyScrollBar.js +192 -0
  705. package/es/components/Table/internal/kernel/sugar/Column.d.ts +10 -0
  706. package/es/components/Table/internal/kernel/sugar/Column.js +11 -0
  707. package/es/components/Table/internal/kernel/sugar/ColumnGroup.d.ts +12 -0
  708. package/es/components/Table/internal/kernel/sugar/ColumnGroup.js +11 -0
  709. package/es/components/Table/internal/kernel/utils/dom/canUseDom.d.ts +1 -0
  710. package/es/components/Table/internal/kernel/utils/dom/canUseDom.js +4 -0
  711. package/es/components/Table/internal/kernel/utils/dom/isVisible.d.ts +2 -0
  712. package/es/components/Table/internal/kernel/utils/dom/isVisible.js +28 -0
  713. package/es/components/Table/internal/kernel/utils/expandUtil.d.ts +4 -0
  714. package/es/components/Table/internal/kernel/utils/expandUtil.js +47 -0
  715. package/es/components/Table/internal/kernel/utils/fixUtil.d.ts +21 -0
  716. package/es/components/Table/internal/kernel/utils/fixUtil.js +64 -0
  717. package/es/components/Table/internal/kernel/utils/get.d.ts +1 -0
  718. package/es/components/Table/internal/kernel/utils/get.js +11 -0
  719. package/es/components/Table/internal/kernel/utils/getScrollBarSize.d.ts +7 -0
  720. package/es/components/Table/internal/kernel/utils/getScrollBarSize.js +38 -0
  721. package/es/components/Table/internal/kernel/utils/legacyUtil.d.ts +5 -0
  722. package/es/components/Table/internal/kernel/utils/legacyUtil.js +31 -0
  723. package/es/components/Table/internal/kernel/utils/offsetUtil.d.ts +4 -0
  724. package/es/components/Table/internal/kernel/utils/offsetUtil.js +13 -0
  725. package/es/components/Table/internal/kernel/utils/pickAttrs.d.ts +6 -0
  726. package/es/components/Table/internal/kernel/utils/pickAttrs.js +33 -0
  727. package/es/components/Table/internal/kernel/utils/useMemo.d.ts +1 -0
  728. package/es/components/Table/internal/kernel/utils/useMemo.js +10 -0
  729. package/es/components/Table/internal/kernel/utils/valueUtil.d.ts +8 -0
  730. package/es/components/Table/internal/kernel/utils/valueUtil.js +30 -0
  731. package/es/components/Table/internal/kernel/utils/warning.d.ts +4 -0
  732. package/es/components/Table/internal/kernel/utils/warning.js +17 -0
  733. package/es/components/Table/renderers/BodyCell.d.ts +15 -0
  734. package/es/components/Table/renderers/BodyCell.js +40 -0
  735. package/es/components/Table/renderers/CellContent.d.ts +4 -0
  736. package/es/components/Table/renderers/CellContent.js +26 -0
  737. package/es/components/Table/renderers/EmptyState.d.ts +5 -0
  738. package/es/components/Table/renderers/EmptyState.js +22 -0
  739. package/es/components/Table/renderers/ExpandedRowContainer.d.ts +4 -0
  740. package/es/components/Table/renderers/ExpandedRowContainer.js +10 -0
  741. package/es/components/Table/renderers/HeaderCell.d.ts +11 -0
  742. package/es/components/Table/renderers/HeaderCell.js +32 -0
  743. package/es/components/Table/style/Table.css +370 -0
  744. package/es/components/Table/style/css.js +10 -0
  745. package/es/components/Table/style/index.d.ts +9 -0
  746. package/es/components/Table/style/index.js +10 -0
  747. package/es/components/Tabs/Tabs.d.ts +6 -0
  748. package/es/components/Tabs/Tabs.js +113 -0
  749. package/es/components/Tabs/index.d.ts +4 -0
  750. package/es/components/Tabs/index.js +5 -0
  751. package/es/components/Tabs/interface.d.ts +29 -0
  752. package/es/components/Tabs/interface.js +2 -0
  753. package/es/components/Tabs/style/Tabs.css +118 -0
  754. package/es/components/Tabs/style/css.js +2 -0
  755. package/es/components/Tabs/style/index.d.ts +1 -0
  756. package/es/components/Tabs/style/index.js +2 -0
  757. package/es/components/Tag/Tag.d.ts +6 -0
  758. package/es/components/Tag/Tag.js +80 -0
  759. package/es/components/Tag/constants.d.ts +18 -0
  760. package/es/components/Tag/constants.js +28 -0
  761. package/es/components/Tag/index.d.ts +5 -0
  762. package/es/components/Tag/index.js +6 -0
  763. package/es/components/Tag/interface.d.ts +15 -0
  764. package/es/components/Tag/interface.js +2 -0
  765. package/es/components/Tag/style/Tag.css +87 -0
  766. package/es/components/Tag/style/css.js +2 -0
  767. package/es/components/Tag/style/index.d.ts +1 -0
  768. package/es/components/Tag/style/index.js +2 -0
  769. package/es/components/Tooltip/Tooltip.d.ts +6 -0
  770. package/es/components/Tooltip/Tooltip.js +71 -0
  771. package/es/components/Tooltip/index.d.ts +4 -0
  772. package/es/components/Tooltip/index.js +5 -0
  773. package/es/components/Tooltip/interface.d.ts +22 -0
  774. package/es/components/Tooltip/interface.js +2 -0
  775. package/es/components/Tooltip/style/Tooltip.css +98 -0
  776. package/es/components/Tooltip/style/css.js +2 -0
  777. package/es/components/Tooltip/style/index.d.ts +1 -0
  778. package/es/components/Tooltip/style/index.js +2 -0
  779. package/es/components/Tour/Tour.d.ts +3 -0
  780. package/es/components/Tour/Tour.js +243 -0
  781. package/es/components/Tour/index.d.ts +4 -0
  782. package/es/components/Tour/index.js +5 -0
  783. package/es/components/Tour/interface.d.ts +46 -0
  784. package/es/components/Tour/interface.js +2 -0
  785. package/es/components/Trigger/Trigger.d.ts +5 -0
  786. package/es/components/Trigger/Trigger.js +193 -0
  787. package/es/components/Trigger/index.d.ts +3 -0
  788. package/es/components/Trigger/index.js +4 -0
  789. package/es/components/Trigger/interface.d.ts +77 -0
  790. package/es/components/Trigger/interface.js +2 -0
  791. package/es/components/Trigger/style/Trigger.css +35 -0
  792. package/es/components/Trigger/style/css.js +2 -0
  793. package/es/components/Trigger/style/index.d.ts +1 -0
  794. package/es/components/Trigger/style/index.js +2 -0
  795. package/es/components/Typography/Typography.d.ts +17 -0
  796. package/es/components/Typography/Typography.js +201 -0
  797. package/es/components/Typography/constants.d.ts +33 -0
  798. package/es/components/Typography/constants.js +9 -0
  799. package/es/components/Typography/index.d.ts +4 -0
  800. package/es/components/Typography/index.js +5 -0
  801. package/es/components/Typography/interface.d.ts +72 -0
  802. package/es/components/Typography/interface.js +22 -0
  803. package/es/components/Typography/render.d.ts +328 -0
  804. package/es/components/Typography/render.js +106 -0
  805. package/es/components/Typography/style/Typography.css +444 -0
  806. package/es/components/Typography/style/css.js +4 -0
  807. package/es/components/Typography/style/index.d.ts +3 -0
  808. package/es/components/Typography/style/index.js +4 -0
  809. package/es/components/Typography/useTypographyEnhancements.d.ts +43 -0
  810. package/es/components/Typography/useTypographyEnhancements.js +111 -0
  811. package/es/components/Typography/utils.d.ts +17 -0
  812. package/es/components/Typography/utils.js +88 -0
  813. package/es/components/Upload/Upload.d.ts +7 -0
  814. package/es/components/Upload/Upload.js +88 -0
  815. package/es/components/Upload/UploadFileBar.d.ts +6 -0
  816. package/es/components/Upload/UploadFileBar.js +69 -0
  817. package/es/components/Upload/index.d.ts +5 -0
  818. package/es/components/Upload/index.js +6 -0
  819. package/es/components/Upload/interface.d.ts +43 -0
  820. package/es/components/Upload/interface.js +2 -0
  821. package/es/components/Upload/style/Upload.css +55 -0
  822. package/es/components/Upload/style/UploadFileBar.css +88 -0
  823. package/es/components/Upload/style/css.js +3 -0
  824. package/es/components/Upload/style/index.d.ts +2 -0
  825. package/es/components/Upload/style/index.js +3 -0
  826. package/es/components/VirtualList/Filler.d.ts +21 -0
  827. package/es/components/VirtualList/Filler.js +56 -0
  828. package/es/components/VirtualList/Item.d.ts +6 -0
  829. package/es/components/VirtualList/Item.js +12 -0
  830. package/es/components/VirtualList/ScrollBar.d.ts +22 -0
  831. package/es/components/VirtualList/ScrollBar.js +236 -0
  832. package/es/components/VirtualList/VirtualList.d.ts +62 -0
  833. package/es/components/VirtualList/VirtualList.js +529 -0
  834. package/es/components/VirtualList/constants.d.ts +4 -0
  835. package/es/components/VirtualList/constants.js +5 -0
  836. package/es/components/VirtualList/hooks/useChildren.d.ts +2 -0
  837. package/es/components/VirtualList/hooks/useChildren.js +25 -0
  838. package/es/components/VirtualList/hooks/useDiffItem.d.ts +2 -0
  839. package/es/components/VirtualList/hooks/useDiffItem.js +16 -0
  840. package/es/components/VirtualList/hooks/useFrameWheel.d.ts +10 -0
  841. package/es/components/VirtualList/hooks/useFrameWheel.js +85 -0
  842. package/es/components/VirtualList/hooks/useGetSize.d.ts +7 -0
  843. package/es/components/VirtualList/hooks/useGetSize.js +47 -0
  844. package/es/components/VirtualList/hooks/useHeights.d.ts +8 -0
  845. package/es/components/VirtualList/hooks/useHeights.js +96 -0
  846. package/es/components/VirtualList/hooks/useMobileTouchMove.d.ts +2 -0
  847. package/es/components/VirtualList/hooks/useMobileTouchMove.js +85 -0
  848. package/es/components/VirtualList/hooks/useOriginScroll.d.ts +2 -0
  849. package/es/components/VirtualList/hooks/useOriginScroll.js +44 -0
  850. package/es/components/VirtualList/hooks/useScrollDrag.d.ts +3 -0
  851. package/es/components/VirtualList/hooks/useScrollDrag.js +76 -0
  852. package/es/components/VirtualList/hooks/useScrollTo.d.ts +18 -0
  853. package/es/components/VirtualList/hooks/useScrollTo.js +132 -0
  854. package/es/components/VirtualList/index.d.ts +9 -0
  855. package/es/components/VirtualList/index.js +5 -0
  856. package/es/components/VirtualList/interface.d.ts +26 -0
  857. package/es/components/VirtualList/interface.js +2 -0
  858. package/es/components/VirtualList/style/VirtualList.css +25 -0
  859. package/es/components/VirtualList/style/css.js +2 -0
  860. package/es/components/VirtualList/style/index.d.ts +1 -0
  861. package/es/components/VirtualList/style/index.js +2 -0
  862. package/es/components/VirtualList/utils/CacheMap.d.ts +16 -0
  863. package/es/components/VirtualList/utils/CacheMap.js +43 -0
  864. package/es/components/VirtualList/utils/algorithmUtil.d.ts +23 -0
  865. package/es/components/VirtualList/utils/algorithmUtil.js +77 -0
  866. package/es/components/VirtualList/utils/isFirefox.d.ts +2 -0
  867. package/es/components/VirtualList/utils/isFirefox.js +4 -0
  868. package/es/components/VirtualList/utils/raf.d.ts +9 -0
  869. package/es/components/VirtualList/utils/raf.js +47 -0
  870. package/es/components/VirtualList/utils/scrollbarUtil.d.ts +1 -0
  871. package/es/components/VirtualList/utils/scrollbarUtil.js +12 -0
  872. package/es/hooks/index.d.ts +2 -0
  873. package/es/hooks/index.js +2 -0
  874. package/es/hooks/useFloatingAnimation.d.ts +24 -0
  875. package/es/hooks/useFloatingAnimation.js +45 -0
  876. package/es/index.css +1 -0
  877. package/es/index.d.ts +92 -0
  878. package/es/index.js +47 -0
  879. package/es/stories/docs/ComponentDocsPage.js +234 -0
  880. package/es/stories/docs/componentDocMeta.js +94 -0
  881. package/es/stories/docs/storybook-docs.css +401 -0
  882. package/es/styles/index.css +5328 -0
  883. package/es/utils/classnames.d.ts +5 -0
  884. package/es/utils/classnames.js +18 -0
  885. package/es/utils/clipboard.d.ts +2 -0
  886. package/es/utils/clipboard.js +50 -0
  887. package/es/utils/ref.d.ts +4 -0
  888. package/es/utils/ref.js +32 -0
  889. package/es/utils/uuid.d.ts +2 -0
  890. package/es/utils/uuid.js +16 -0
  891. package/lib/components/Accordion/Accordion.d.ts +4 -0
  892. package/lib/components/Accordion/Accordion.js +108 -0
  893. package/lib/components/Accordion/constants.d.ts +16 -0
  894. package/lib/components/Accordion/constants.js +23 -0
  895. package/lib/components/Accordion/index.d.ts +4 -0
  896. package/lib/components/Accordion/index.js +33 -0
  897. package/lib/components/Accordion/interface.d.ts +29 -0
  898. package/lib/components/Accordion/interface.js +6 -0
  899. package/lib/components/Accordion/style/Accordion.css +94 -0
  900. package/lib/components/Accordion/style/css.js +4 -0
  901. package/lib/components/Accordion/style/index.d.ts +1 -0
  902. package/lib/components/Accordion/style/index.js +4 -0
  903. package/lib/components/Alert/Alert.d.ts +6 -0
  904. package/lib/components/Alert/Alert.js +120 -0
  905. package/lib/components/Alert/index.d.ts +4 -0
  906. package/lib/components/Alert/index.js +33 -0
  907. package/lib/components/Alert/interface.d.ts +42 -0
  908. package/lib/components/Alert/interface.js +12 -0
  909. package/lib/components/Alert/style/Alert.css +101 -0
  910. package/lib/components/Alert/style/css.js +5 -0
  911. package/lib/components/Alert/style/index.d.ts +2 -0
  912. package/lib/components/Alert/style/index.js +5 -0
  913. package/lib/components/Button/Button.d.ts +4 -0
  914. package/lib/components/Button/Button.js +159 -0
  915. package/lib/components/Button/constants.d.ts +70 -0
  916. package/lib/components/Button/constants.js +97 -0
  917. package/lib/components/Button/index.d.ts +5 -0
  918. package/lib/components/Button/index.js +45 -0
  919. package/lib/components/Button/interface.d.ts +23 -0
  920. package/lib/components/Button/interface.js +6 -0
  921. package/lib/components/Button/style/Button.css +178 -0
  922. package/lib/components/Button/style/css.js +4 -0
  923. package/lib/components/Button/style/index.d.ts +1 -0
  924. package/lib/components/Button/style/index.js +4 -0
  925. package/lib/components/Calendar/Calendar.d.ts +7 -0
  926. package/lib/components/Calendar/Calendar.js +137 -0
  927. package/lib/components/Calendar/index.d.ts +4 -0
  928. package/lib/components/Calendar/index.js +33 -0
  929. package/lib/components/Calendar/interface.d.ts +29 -0
  930. package/lib/components/Calendar/interface.js +6 -0
  931. package/lib/components/Calendar/style/Calendar.css +400 -0
  932. package/lib/components/Calendar/style/css.js +4 -0
  933. package/lib/components/Calendar/style/index.d.ts +1 -0
  934. package/lib/components/Calendar/style/index.js +4 -0
  935. package/lib/components/Carousel/Carousel.d.ts +6 -0
  936. package/lib/components/Carousel/Carousel.js +56 -0
  937. package/lib/components/Carousel/index.d.ts +4 -0
  938. package/lib/components/Carousel/index.js +33 -0
  939. package/lib/components/Carousel/interface.d.ts +15 -0
  940. package/lib/components/Carousel/interface.js +6 -0
  941. package/lib/components/Carousel/style/Carousel.css +57 -0
  942. package/lib/components/Carousel/style/css.js +4 -0
  943. package/lib/components/Carousel/style/index.d.ts +1 -0
  944. package/lib/components/Carousel/style/index.js +4 -0
  945. package/lib/components/Cell/Cell.d.ts +5 -0
  946. package/lib/components/Cell/Cell.js +66 -0
  947. package/lib/components/Cell/index.d.ts +4 -0
  948. package/lib/components/Cell/index.js +33 -0
  949. package/lib/components/Cell/interface.d.ts +12 -0
  950. package/lib/components/Cell/interface.js +6 -0
  951. package/lib/components/Cell/style/Cell.css +80 -0
  952. package/lib/components/Cell/style/css.js +4 -0
  953. package/lib/components/Cell/style/index.d.ts +1 -0
  954. package/lib/components/Cell/style/index.js +4 -0
  955. package/lib/components/Checkbox/BaseCheckbox.d.ts +6 -0
  956. package/lib/components/Checkbox/BaseCheckbox.js +94 -0
  957. package/lib/components/Checkbox/Checkbox.d.ts +6 -0
  958. package/lib/components/Checkbox/Checkbox.js +132 -0
  959. package/lib/components/Checkbox/CheckboxGroup.d.ts +5 -0
  960. package/lib/components/Checkbox/CheckboxGroup.js +151 -0
  961. package/lib/components/Checkbox/CheckboxGroupContext.d.ts +14 -0
  962. package/lib/components/Checkbox/CheckboxGroupContext.js +9 -0
  963. package/lib/components/Checkbox/constants.d.ts +17 -0
  964. package/lib/components/Checkbox/constants.js +23 -0
  965. package/lib/components/Checkbox/index.d.ts +10 -0
  966. package/lib/components/Checkbox/index.js +53 -0
  967. package/lib/components/Checkbox/interface.d.ts +77 -0
  968. package/lib/components/Checkbox/interface.js +6 -0
  969. package/lib/components/Checkbox/style/Checkbox.css +191 -0
  970. package/lib/components/Checkbox/style/css.js +4 -0
  971. package/lib/components/Checkbox/style/index.d.ts +1 -0
  972. package/lib/components/Checkbox/style/index.js +4 -0
  973. package/lib/components/CoachMark/CoachMark.d.ts +4 -0
  974. package/lib/components/CoachMark/CoachMark.js +152 -0
  975. package/lib/components/CoachMark/index.d.ts +4 -0
  976. package/lib/components/CoachMark/index.js +33 -0
  977. package/lib/components/CoachMark/interface.d.ts +47 -0
  978. package/lib/components/CoachMark/interface.js +8 -0
  979. package/lib/components/CoachMark/style/CoachMark.css +156 -0
  980. package/lib/components/CoachMark/style/css.js +7 -0
  981. package/lib/components/CoachMark/style/index.d.ts +4 -0
  982. package/lib/components/CoachMark/style/index.js +7 -0
  983. package/lib/components/Copy/Clipboard.d.ts +4 -0
  984. package/lib/components/Copy/Clipboard.js +54 -0
  985. package/lib/components/Copy/Copy.d.ts +4 -0
  986. package/lib/components/Copy/Copy.js +91 -0
  987. package/lib/components/Copy/index.d.ts +5 -0
  988. package/lib/components/Copy/index.js +41 -0
  989. package/lib/components/Copy/interface.d.ts +38 -0
  990. package/lib/components/Copy/interface.js +6 -0
  991. package/lib/components/Copy/style/Clipboard.css +45 -0
  992. package/lib/components/Copy/style/Copy.css +48 -0
  993. package/lib/components/Copy/style/css.js +5 -0
  994. package/lib/components/Copy/style/index.d.ts +2 -0
  995. package/lib/components/Copy/style/index.js +5 -0
  996. package/lib/components/Dialog/Dialog.d.ts +4 -0
  997. package/lib/components/Dialog/Dialog.js +368 -0
  998. package/lib/components/Dialog/constants.d.ts +57 -0
  999. package/lib/components/Dialog/constants.js +61 -0
  1000. package/lib/components/Dialog/index.d.ts +4 -0
  1001. package/lib/components/Dialog/index.js +33 -0
  1002. package/lib/components/Dialog/interface.d.ts +36 -0
  1003. package/lib/components/Dialog/interface.js +6 -0
  1004. package/lib/components/Dialog/style/Dialog.css +204 -0
  1005. package/lib/components/Dialog/style/css.js +4 -0
  1006. package/lib/components/Dialog/style/index.d.ts +1 -0
  1007. package/lib/components/Dialog/style/index.js +4 -0
  1008. package/lib/components/Divider/Divider.d.ts +4 -0
  1009. package/lib/components/Divider/Divider.js +60 -0
  1010. package/lib/components/Divider/constants.d.ts +36 -0
  1011. package/lib/components/Divider/constants.js +48 -0
  1012. package/lib/components/Divider/index.d.ts +4 -0
  1013. package/lib/components/Divider/index.js +31 -0
  1014. package/lib/components/Divider/interface.d.ts +19 -0
  1015. package/lib/components/Divider/interface.js +6 -0
  1016. package/lib/components/Divider/style/Divider.css +128 -0
  1017. package/lib/components/Divider/style/css.js +4 -0
  1018. package/lib/components/Divider/style/index.d.ts +1 -0
  1019. package/lib/components/Divider/style/index.js +4 -0
  1020. package/lib/components/Drawer/Drawer.d.ts +4 -0
  1021. package/lib/components/Drawer/Drawer.js +165 -0
  1022. package/lib/components/Drawer/constants.d.ts +18 -0
  1023. package/lib/components/Drawer/constants.js +25 -0
  1024. package/lib/components/Drawer/hooks/index.d.ts +4 -0
  1025. package/lib/components/Drawer/hooks/index.js +34 -0
  1026. package/lib/components/Drawer/hooks/useBodyScrollLock.d.ts +1 -0
  1027. package/lib/components/Drawer/hooks/useBodyScrollLock.js +35 -0
  1028. package/lib/components/Drawer/hooks/useDialogFocus.d.ts +2 -0
  1029. package/lib/components/Drawer/hooks/useDialogFocus.js +28 -0
  1030. package/lib/components/Drawer/hooks/useDrawerTransition.d.ts +4 -0
  1031. package/lib/components/Drawer/hooks/useDrawerTransition.js +64 -0
  1032. package/lib/components/Drawer/hooks/useEscapeClose.d.ts +1 -0
  1033. package/lib/components/Drawer/hooks/useEscapeClose.js +22 -0
  1034. package/lib/components/Drawer/index.d.ts +3 -0
  1035. package/lib/components/Drawer/index.js +46 -0
  1036. package/lib/components/Drawer/interface.d.ts +79 -0
  1037. package/lib/components/Drawer/interface.js +6 -0
  1038. package/lib/components/Drawer/style/Drawer.css +145 -0
  1039. package/lib/components/Drawer/style/css.js +4 -0
  1040. package/lib/components/Drawer/style/index.d.ts +1 -0
  1041. package/lib/components/Drawer/style/index.js +4 -0
  1042. package/lib/components/Dropdown/Dropdown.d.ts +5 -0
  1043. package/lib/components/Dropdown/Dropdown.js +39 -0
  1044. package/lib/components/Dropdown/index.d.ts +3 -0
  1045. package/lib/components/Dropdown/index.js +35 -0
  1046. package/lib/components/Dropdown/interface.d.ts +8 -0
  1047. package/lib/components/Dropdown/interface.js +6 -0
  1048. package/lib/components/Dropdown/style/Dropdown.css +48 -0
  1049. package/lib/components/Dropdown/style/css.js +5 -0
  1050. package/lib/components/Dropdown/style/index.d.ts +2 -0
  1051. package/lib/components/Dropdown/style/index.js +5 -0
  1052. package/lib/components/Empty/Empty.d.ts +6 -0
  1053. package/lib/components/Empty/Empty.js +77 -0
  1054. package/lib/components/Empty/index.d.ts +4 -0
  1055. package/lib/components/Empty/index.js +33 -0
  1056. package/lib/components/Empty/interface.d.ts +11 -0
  1057. package/lib/components/Empty/interface.js +6 -0
  1058. package/lib/components/Empty/style/Empty.css +58 -0
  1059. package/lib/components/Empty/style/css.js +5 -0
  1060. package/lib/components/Empty/style/index.d.ts +2 -0
  1061. package/lib/components/Empty/style/index.js +5 -0
  1062. package/lib/components/Flex/Flex.d.ts +5 -0
  1063. package/lib/components/Flex/Flex.js +60 -0
  1064. package/lib/components/Flex/constants.d.ts +41 -0
  1065. package/lib/components/Flex/constants.js +51 -0
  1066. package/lib/components/Flex/index.d.ts +5 -0
  1067. package/lib/components/Flex/index.js +60 -0
  1068. package/lib/components/Flex/interface.d.ts +13 -0
  1069. package/lib/components/Flex/interface.js +6 -0
  1070. package/lib/components/Flex/style/Flex.css +71 -0
  1071. package/lib/components/Flex/style/css.js +4 -0
  1072. package/lib/components/Flex/style/index.d.ts +1 -0
  1073. package/lib/components/Flex/style/index.js +4 -0
  1074. package/lib/components/Grid/Col.d.ts +4 -0
  1075. package/lib/components/Grid/Col.js +93 -0
  1076. package/lib/components/Grid/Grid.d.ts +10 -0
  1077. package/lib/components/Grid/Grid.js +21 -0
  1078. package/lib/components/Grid/Row.d.ts +4 -0
  1079. package/lib/components/Grid/Row.js +50 -0
  1080. package/lib/components/Grid/constants.d.ts +48 -0
  1081. package/lib/components/Grid/constants.js +77 -0
  1082. package/lib/components/Grid/helper.d.ts +15 -0
  1083. package/lib/components/Grid/helper.js +94 -0
  1084. package/lib/components/Grid/index.d.ts +7 -0
  1085. package/lib/components/Grid/index.js +62 -0
  1086. package/lib/components/Grid/interface.d.ts +38 -0
  1087. package/lib/components/Grid/interface.js +6 -0
  1088. package/lib/components/Grid/style/Grid.css +952 -0
  1089. package/lib/components/Grid/style/css.js +4 -0
  1090. package/lib/components/Grid/style/index.d.ts +1 -0
  1091. package/lib/components/Grid/style/index.js +4 -0
  1092. package/lib/components/Icons/Icons.d.ts +194 -0
  1093. package/lib/components/Icons/Icons.js +195 -0
  1094. package/lib/components/Icons/Illustrations.d.ts +19 -0
  1095. package/lib/components/Icons/Illustrations.js +943 -0
  1096. package/lib/components/Icons/Logo.d.ts +36 -0
  1097. package/lib/components/Icons/Logo.js +219 -0
  1098. package/lib/components/Icons/SVGs.d.ts +267 -0
  1099. package/lib/components/Icons/SVGs.js +1936 -0
  1100. package/lib/components/Icons/Wrapper.d.ts +6 -0
  1101. package/lib/components/Icons/Wrapper.js +109 -0
  1102. package/lib/components/Icons/index.d.ts +4 -0
  1103. package/lib/components/Icons/index.js +52 -0
  1104. package/lib/components/Icons/interface.d.ts +30 -0
  1105. package/lib/components/Icons/interface.js +6 -0
  1106. package/lib/components/Icons/style/Icons.css +81 -0
  1107. package/lib/components/Icons/style/css.js +4 -0
  1108. package/lib/components/Icons/style/index.d.ts +1 -0
  1109. package/lib/components/Icons/style/index.js +4 -0
  1110. package/lib/components/Input/Amount/Amount.d.ts +6 -0
  1111. package/lib/components/Input/Amount/Amount.js +208 -0
  1112. package/lib/components/Input/Amount/helper.d.ts +35 -0
  1113. package/lib/components/Input/Amount/helper.js +102 -0
  1114. package/lib/components/Input/Amount/index.d.ts +3 -0
  1115. package/lib/components/Input/Amount/index.js +18 -0
  1116. package/lib/components/Input/Amount/style/Amount.css +103 -0
  1117. package/lib/components/Input/Amount/style/css.js +4 -0
  1118. package/lib/components/Input/Amount/style/index.d.ts +1 -0
  1119. package/lib/components/Input/Amount/style/index.js +4 -0
  1120. package/lib/components/Input/FieldShell/FieldShell.css +76 -0
  1121. package/lib/components/Input/FieldShell/FieldShell.d.ts +23 -0
  1122. package/lib/components/Input/FieldShell/FieldShell.js +108 -0
  1123. package/lib/components/Input/FieldShell/index.d.ts +3 -0
  1124. package/lib/components/Input/FieldShell/index.js +22 -0
  1125. package/lib/components/Input/Input/Input.css +124 -0
  1126. package/lib/components/Input/Input/Input.d.ts +3 -0
  1127. package/lib/components/Input/Input/Input.js +180 -0
  1128. package/lib/components/Input/Input/index.d.ts +2 -0
  1129. package/lib/components/Input/Input/index.js +22 -0
  1130. package/lib/components/Input/Mask/Mask.d.ts +5 -0
  1131. package/lib/components/Input/Mask/Mask.js +354 -0
  1132. package/lib/components/Input/Mask/index.d.ts +2 -0
  1133. package/lib/components/Input/Mask/index.js +22 -0
  1134. package/lib/components/Input/OTP/OTP.css +79 -0
  1135. package/lib/components/Input/OTP/OTP.d.ts +5 -0
  1136. package/lib/components/Input/OTP/OTP.js +164 -0
  1137. package/lib/components/Input/OTP/index.d.ts +2 -0
  1138. package/lib/components/Input/OTP/index.js +22 -0
  1139. package/lib/components/Input/Password/Password.d.ts +5 -0
  1140. package/lib/components/Input/Password/Password.js +138 -0
  1141. package/lib/components/Input/Password/index.d.ts +2 -0
  1142. package/lib/components/Input/Password/index.js +22 -0
  1143. package/lib/components/Input/Search/Search.d.ts +5 -0
  1144. package/lib/components/Input/Search/Search.js +161 -0
  1145. package/lib/components/Input/Search/index.d.ts +2 -0
  1146. package/lib/components/Input/Search/index.js +22 -0
  1147. package/lib/components/Input/TextArea/TextArea.css +93 -0
  1148. package/lib/components/Input/TextArea/TextArea.d.ts +5 -0
  1149. package/lib/components/Input/TextArea/TextArea.js +110 -0
  1150. package/lib/components/Input/TextArea/index.d.ts +2 -0
  1151. package/lib/components/Input/TextArea/index.js +22 -0
  1152. package/lib/components/Input/Trade/Trade.css +192 -0
  1153. package/lib/components/Input/Trade/Trade.d.ts +5 -0
  1154. package/lib/components/Input/Trade/Trade.js +142 -0
  1155. package/lib/components/Input/Trade/index.d.ts +2 -0
  1156. package/lib/components/Input/Trade/index.js +22 -0
  1157. package/lib/components/Input/constants.d.ts +15 -0
  1158. package/lib/components/Input/constants.js +22 -0
  1159. package/lib/components/Input/index.d.ts +4 -0
  1160. package/lib/components/Input/index.js +49 -0
  1161. package/lib/components/Input/interface.d.ts +156 -0
  1162. package/lib/components/Input/interface.js +6 -0
  1163. package/lib/components/Input/style/css.js +9 -0
  1164. package/lib/components/Input/style/index.d.ts +6 -0
  1165. package/lib/components/Input/style/index.js +9 -0
  1166. package/lib/components/Input/useAmountInput.d.ts +35 -0
  1167. package/lib/components/Input/useAmountInput.js +214 -0
  1168. package/lib/components/Input/useSyncRef.d.ts +2 -0
  1169. package/lib/components/Input/useSyncRef.js +19 -0
  1170. package/lib/components/Link/Link.d.ts +4 -0
  1171. package/lib/components/Link/Link.js +66 -0
  1172. package/lib/components/Link/constants.d.ts +5 -0
  1173. package/lib/components/Link/constants.js +12 -0
  1174. package/lib/components/Link/index.d.ts +5 -0
  1175. package/lib/components/Link/index.js +45 -0
  1176. package/lib/components/Link/interface.d.ts +13 -0
  1177. package/lib/components/Link/interface.js +6 -0
  1178. package/lib/components/Link/style/Link.css +70 -0
  1179. package/lib/components/Link/style/css.js +4 -0
  1180. package/lib/components/Link/style/index.d.ts +1 -0
  1181. package/lib/components/Link/style/index.js +4 -0
  1182. package/lib/components/Navigation/Nav.d.ts +5 -0
  1183. package/lib/components/Navigation/Nav.js +210 -0
  1184. package/lib/components/Navigation/Navigation.d.ts +5 -0
  1185. package/lib/components/Navigation/Navigation.js +309 -0
  1186. package/lib/components/Navigation/NavigationLogo.d.ts +8 -0
  1187. package/lib/components/Navigation/NavigationLogo.js +52 -0
  1188. package/lib/components/Navigation/NavigationStepper.d.ts +5 -0
  1189. package/lib/components/Navigation/NavigationStepper.js +82 -0
  1190. package/lib/components/Navigation/index.d.ts +6 -0
  1191. package/lib/components/Navigation/index.js +49 -0
  1192. package/lib/components/Navigation/interface.d.ts +134 -0
  1193. package/lib/components/Navigation/interface.js +6 -0
  1194. package/lib/components/Navigation/style/Nav.css +158 -0
  1195. package/lib/components/Navigation/style/Navigation.css +373 -0
  1196. package/lib/components/Navigation/style/NavigationStepper.css +97 -0
  1197. package/lib/components/Navigation/style/css.js +6 -0
  1198. package/lib/components/Navigation/style/index.d.ts +3 -0
  1199. package/lib/components/Navigation/style/index.js +6 -0
  1200. package/lib/components/Notification/Notification.d.ts +6 -0
  1201. package/lib/components/Notification/Notification.js +116 -0
  1202. package/lib/components/Notification/NotificationStatic.d.ts +4 -0
  1203. package/lib/components/Notification/NotificationStatic.js +515 -0
  1204. package/lib/components/Notification/constants.d.ts +12 -0
  1205. package/lib/components/Notification/constants.js +22 -0
  1206. package/lib/components/Notification/index.d.ts +5 -0
  1207. package/lib/components/Notification/index.js +52 -0
  1208. package/lib/components/Notification/interface.d.ts +70 -0
  1209. package/lib/components/Notification/interface.js +13 -0
  1210. package/lib/components/Notification/style/Notification.css +170 -0
  1211. package/lib/components/Notification/style/css.js +4 -0
  1212. package/lib/components/Notification/style/index.d.ts +1 -0
  1213. package/lib/components/Notification/style/index.js +4 -0
  1214. package/lib/components/Pagination/Pagination.d.ts +5 -0
  1215. package/lib/components/Pagination/Pagination.js +145 -0
  1216. package/lib/components/Pagination/constants.d.ts +52 -0
  1217. package/lib/components/Pagination/constants.js +62 -0
  1218. package/lib/components/Pagination/index.d.ts +6 -0
  1219. package/lib/components/Pagination/index.js +53 -0
  1220. package/lib/components/Pagination/interface.d.ts +53 -0
  1221. package/lib/components/Pagination/interface.js +6 -0
  1222. package/lib/components/Pagination/style/Pagination.css +89 -0
  1223. package/lib/components/Pagination/style/css.js +4 -0
  1224. package/lib/components/Pagination/style/index.d.ts +1 -0
  1225. package/lib/components/Pagination/style/index.js +4 -0
  1226. package/lib/components/Pagination/usePagination.d.ts +3 -0
  1227. package/lib/components/Pagination/usePagination.js +152 -0
  1228. package/lib/components/Popconfirm/Popconfirm.d.ts +6 -0
  1229. package/lib/components/Popconfirm/Popconfirm.js +154 -0
  1230. package/lib/components/Popconfirm/constants.d.ts +74 -0
  1231. package/lib/components/Popconfirm/constants.js +80 -0
  1232. package/lib/components/Popconfirm/index.d.ts +4 -0
  1233. package/lib/components/Popconfirm/index.js +33 -0
  1234. package/lib/components/Popconfirm/interface.d.ts +40 -0
  1235. package/lib/components/Popconfirm/interface.js +6 -0
  1236. package/lib/components/Popconfirm/style/Popconfirm.css +137 -0
  1237. package/lib/components/Popconfirm/style/css.js +7 -0
  1238. package/lib/components/Popconfirm/style/index.d.ts +4 -0
  1239. package/lib/components/Popconfirm/style/index.js +7 -0
  1240. package/lib/components/Portal/Portal.d.ts +3 -0
  1241. package/lib/components/Portal/Portal.js +61 -0
  1242. package/lib/components/Portal/index.d.ts +4 -0
  1243. package/lib/components/Portal/index.js +33 -0
  1244. package/lib/components/Portal/interface.d.ts +7 -0
  1245. package/lib/components/Portal/interface.js +6 -0
  1246. package/lib/components/ProForm/ProForm.d.ts +4 -0
  1247. package/lib/components/ProForm/ProForm.js +312 -0
  1248. package/lib/components/ProForm/ProFormDependency.d.ts +4 -0
  1249. package/lib/components/ProForm/ProFormDependency.js +170 -0
  1250. package/lib/components/ProForm/ProFormGroup.d.ts +3 -0
  1251. package/lib/components/ProForm/ProFormGroup.js +85 -0
  1252. package/lib/components/ProForm/ProFormItem.d.ts +4 -0
  1253. package/lib/components/ProForm/ProFormItem.js +229 -0
  1254. package/lib/components/ProForm/ProFormList.d.ts +3 -0
  1255. package/lib/components/ProForm/ProFormList.js +259 -0
  1256. package/lib/components/ProForm/Submitter.d.ts +6 -0
  1257. package/lib/components/ProForm/Submitter.js +113 -0
  1258. package/lib/components/ProForm/constants.d.ts +18 -0
  1259. package/lib/components/ProForm/constants.js +29 -0
  1260. package/lib/components/ProForm/context.d.ts +13 -0
  1261. package/lib/components/ProForm/context.js +35 -0
  1262. package/lib/components/ProForm/core/constants.d.ts +21 -0
  1263. package/lib/components/ProForm/core/constants.js +26 -0
  1264. package/lib/components/ProForm/core/hooks/useForm.d.ts +3 -0
  1265. package/lib/components/ProForm/core/hooks/useForm.js +686 -0
  1266. package/lib/components/ProForm/core/hooks/useFormCore.d.ts +3 -0
  1267. package/lib/components/ProForm/core/hooks/useFormCore.js +354 -0
  1268. package/lib/components/ProForm/core/index.d.ts +6 -0
  1269. package/lib/components/ProForm/core/index.js +56 -0
  1270. package/lib/components/ProForm/core/interface.d.ts +153 -0
  1271. package/lib/components/ProForm/core/interface.js +6 -0
  1272. package/lib/components/ProForm/core/useFormItem.d.ts +21 -0
  1273. package/lib/components/ProForm/core/useFormItem.js +183 -0
  1274. package/lib/components/ProForm/fields/ProFormCheckbox.d.ts +3 -0
  1275. package/lib/components/ProForm/fields/ProFormCheckbox.js +17 -0
  1276. package/lib/components/ProForm/fields/ProFormCheckboxGroup.d.ts +3 -0
  1277. package/lib/components/ProForm/fields/ProFormCheckboxGroup.js +18 -0
  1278. package/lib/components/ProForm/fields/ProFormDatePicker.d.ts +3 -0
  1279. package/lib/components/ProForm/fields/ProFormDatePicker.js +29 -0
  1280. package/lib/components/ProForm/fields/ProFormFieldSet.d.ts +4 -0
  1281. package/lib/components/ProForm/fields/ProFormFieldSet.js +75 -0
  1282. package/lib/components/ProForm/fields/ProFormPassword.d.ts +3 -0
  1283. package/lib/components/ProForm/fields/ProFormPassword.js +17 -0
  1284. package/lib/components/ProForm/fields/ProFormRadioGroup.d.ts +3 -0
  1285. package/lib/components/ProForm/fields/ProFormRadioGroup.js +16 -0
  1286. package/lib/components/ProForm/fields/ProFormSelect.d.ts +3 -0
  1287. package/lib/components/ProForm/fields/ProFormSelect.js +46 -0
  1288. package/lib/components/ProForm/fields/ProFormSlider.d.ts +3 -0
  1289. package/lib/components/ProForm/fields/ProFormSlider.js +16 -0
  1290. package/lib/components/ProForm/fields/ProFormSwitch.d.ts +3 -0
  1291. package/lib/components/ProForm/fields/ProFormSwitch.js +17 -0
  1292. package/lib/components/ProForm/fields/ProFormText.d.ts +3 -0
  1293. package/lib/components/ProForm/fields/ProFormText.js +16 -0
  1294. package/lib/components/ProForm/fields/ProFormTextArea.d.ts +3 -0
  1295. package/lib/components/ProForm/fields/ProFormTextArea.js +16 -0
  1296. package/lib/components/ProForm/fields/ProFormUpload.d.ts +3 -0
  1297. package/lib/components/ProForm/fields/ProFormUpload.js +32 -0
  1298. package/lib/components/ProForm/fields/createProFormField.d.ts +4 -0
  1299. package/lib/components/ProForm/fields/createProFormField.js +164 -0
  1300. package/lib/components/ProForm/fields/index.d.ts +13 -0
  1301. package/lib/components/ProForm/fields/index.js +97 -0
  1302. package/lib/components/ProForm/hooks/useFieldRequest.d.ts +7 -0
  1303. package/lib/components/ProForm/hooks/useFieldRequest.js +98 -0
  1304. package/lib/components/ProForm/index.d.ts +38 -0
  1305. package/lib/components/ProForm/index.js +206 -0
  1306. package/lib/components/ProForm/interface.d.ts +284 -0
  1307. package/lib/components/ProForm/interface.js +6 -0
  1308. package/lib/components/ProForm/layouts/DialogForm.d.ts +3 -0
  1309. package/lib/components/ProForm/layouts/DialogForm.js +81 -0
  1310. package/lib/components/ProForm/layouts/DrawerForm.d.ts +3 -0
  1311. package/lib/components/ProForm/layouts/DrawerForm.js +80 -0
  1312. package/lib/components/ProForm/layouts/QueryFilter.d.ts +4 -0
  1313. package/lib/components/ProForm/layouts/QueryFilter.js +167 -0
  1314. package/lib/components/ProForm/layouts/index.d.ts +4 -0
  1315. package/lib/components/ProForm/layouts/index.js +34 -0
  1316. package/lib/components/ProForm/layouts/useOverlayForm.d.ts +17 -0
  1317. package/lib/components/ProForm/layouts/useOverlayForm.js +117 -0
  1318. package/lib/components/ProForm/style/ProForm.css +168 -0
  1319. package/lib/components/ProForm/style/css.js +4 -0
  1320. package/lib/components/ProForm/style/index.d.ts +1 -0
  1321. package/lib/components/ProForm/style/index.js +4 -0
  1322. package/lib/components/ProForm/utils.d.ts +22 -0
  1323. package/lib/components/ProForm/utils.js +228 -0
  1324. package/lib/components/Progress/Progress.d.ts +6 -0
  1325. package/lib/components/Progress/Progress.js +103 -0
  1326. package/lib/components/Progress/constants.d.ts +26 -0
  1327. package/lib/components/Progress/constants.js +38 -0
  1328. package/lib/components/Progress/index.d.ts +5 -0
  1329. package/lib/components/Progress/index.js +45 -0
  1330. package/lib/components/Progress/interface.d.ts +26 -0
  1331. package/lib/components/Progress/interface.js +6 -0
  1332. package/lib/components/Progress/style/Progress.css +103 -0
  1333. package/lib/components/Progress/style/css.js +4 -0
  1334. package/lib/components/Progress/style/index.d.ts +1 -0
  1335. package/lib/components/Progress/style/index.js +4 -0
  1336. package/lib/components/Radio/BaseRadio.d.ts +16 -0
  1337. package/lib/components/Radio/BaseRadio.js +65 -0
  1338. package/lib/components/Radio/Radio.d.ts +6 -0
  1339. package/lib/components/Radio/Radio.js +192 -0
  1340. package/lib/components/Radio/RadioGroup.d.ts +5 -0
  1341. package/lib/components/Radio/RadioGroup.js +112 -0
  1342. package/lib/components/Radio/RadioGroupContext.d.ts +22 -0
  1343. package/lib/components/Radio/RadioGroupContext.js +13 -0
  1344. package/lib/components/Radio/constants.d.ts +39 -0
  1345. package/lib/components/Radio/constants.js +63 -0
  1346. package/lib/components/Radio/index.d.ts +5 -0
  1347. package/lib/components/Radio/index.js +41 -0
  1348. package/lib/components/Radio/interface.d.ts +122 -0
  1349. package/lib/components/Radio/interface.js +6 -0
  1350. package/lib/components/Radio/style/Radio.css +362 -0
  1351. package/lib/components/Radio/style/css.js +5 -0
  1352. package/lib/components/Radio/style/index.d.ts +2 -0
  1353. package/lib/components/Radio/style/index.js +5 -0
  1354. package/lib/components/ResizeObserver/Collection.d.ts +19 -0
  1355. package/lib/components/ResizeObserver/Collection.js +51 -0
  1356. package/lib/components/ResizeObserver/ResizeObserver.d.ts +7 -0
  1357. package/lib/components/ResizeObserver/ResizeObserver.js +41 -0
  1358. package/lib/components/ResizeObserver/SingleObserver/index.d.ts +7 -0
  1359. package/lib/components/ResizeObserver/SingleObserver/index.js +48 -0
  1360. package/lib/components/ResizeObserver/index.d.ts +7 -0
  1361. package/lib/components/ResizeObserver/index.js +30 -0
  1362. package/lib/components/ResizeObserver/interface.d.ts +16 -0
  1363. package/lib/components/ResizeObserver/interface.js +6 -0
  1364. package/lib/components/ResizeObserver/useResizeObserver.d.ts +2 -0
  1365. package/lib/components/ResizeObserver/useResizeObserver.js +79 -0
  1366. package/lib/components/ResizeObserver/utils/observerUtil.d.ts +7 -0
  1367. package/lib/components/ResizeObserver/utils/observerUtil.js +47 -0
  1368. package/lib/components/ResizeObserver/utils/reactUtil.d.ts +19 -0
  1369. package/lib/components/ResizeObserver/utils/reactUtil.js +91 -0
  1370. package/lib/components/Segment/Segment.d.ts +6 -0
  1371. package/lib/components/Segment/Segment.js +110 -0
  1372. package/lib/components/Segment/index.d.ts +4 -0
  1373. package/lib/components/Segment/index.js +33 -0
  1374. package/lib/components/Segment/interface.d.ts +23 -0
  1375. package/lib/components/Segment/interface.js +6 -0
  1376. package/lib/components/Segment/style/Segment.css +79 -0
  1377. package/lib/components/Segment/style/css.js +4 -0
  1378. package/lib/components/Segment/style/index.d.ts +1 -0
  1379. package/lib/components/Segment/style/index.js +4 -0
  1380. package/lib/components/Select/Select.d.ts +6 -0
  1381. package/lib/components/Select/Select.js +573 -0
  1382. package/lib/components/Select/SelectCustom.d.ts +6 -0
  1383. package/lib/components/Select/SelectCustom.js +242 -0
  1384. package/lib/components/Select/SelectFieldShell.d.ts +24 -0
  1385. package/lib/components/Select/SelectFieldShell.js +87 -0
  1386. package/lib/components/Select/SelectOptionContent.d.ts +17 -0
  1387. package/lib/components/Select/SelectOptionContent.js +51 -0
  1388. package/lib/components/Select/SelectSearchControl.d.ts +15 -0
  1389. package/lib/components/Select/SelectSearchControl.js +49 -0
  1390. package/lib/components/Select/SelectValueContent.d.ts +18 -0
  1391. package/lib/components/Select/SelectValueContent.js +105 -0
  1392. package/lib/components/Select/constants.d.ts +45 -0
  1393. package/lib/components/Select/constants.js +49 -0
  1394. package/lib/components/Select/index.d.ts +7 -0
  1395. package/lib/components/Select/index.js +41 -0
  1396. package/lib/components/Select/interface.d.ts +229 -0
  1397. package/lib/components/Select/interface.js +10 -0
  1398. package/lib/components/Select/style/Select.css +468 -0
  1399. package/lib/components/Select/style/css.js +6 -0
  1400. package/lib/components/Select/style/index.d.ts +3 -0
  1401. package/lib/components/Select/style/index.js +6 -0
  1402. package/lib/components/Select/useSelectShell.d.ts +34 -0
  1403. package/lib/components/Select/useSelectShell.js +114 -0
  1404. package/lib/components/Select/utils.d.ts +21 -0
  1405. package/lib/components/Select/utils.js +161 -0
  1406. package/lib/components/Skeleton/Skeleton.d.ts +6 -0
  1407. package/lib/components/Skeleton/Skeleton.js +58 -0
  1408. package/lib/components/Skeleton/index.d.ts +4 -0
  1409. package/lib/components/Skeleton/index.js +33 -0
  1410. package/lib/components/Skeleton/interface.d.ts +19 -0
  1411. package/lib/components/Skeleton/interface.js +6 -0
  1412. package/lib/components/Skeleton/style/Skeleton.css +54 -0
  1413. package/lib/components/Skeleton/style/css.js +4 -0
  1414. package/lib/components/Skeleton/style/index.d.ts +1 -0
  1415. package/lib/components/Skeleton/style/index.js +4 -0
  1416. package/lib/components/Slider/Slider.d.ts +6 -0
  1417. package/lib/components/Slider/Slider.js +127 -0
  1418. package/lib/components/Slider/index.d.ts +4 -0
  1419. package/lib/components/Slider/index.js +33 -0
  1420. package/lib/components/Slider/interface.d.ts +39 -0
  1421. package/lib/components/Slider/interface.js +6 -0
  1422. package/lib/components/Slider/style/Slider.css +161 -0
  1423. package/lib/components/Slider/style/css.js +4 -0
  1424. package/lib/components/Slider/style/index.d.ts +1 -0
  1425. package/lib/components/Slider/style/index.js +4 -0
  1426. package/lib/components/Space/Space.d.ts +5 -0
  1427. package/lib/components/Space/Space.js +88 -0
  1428. package/lib/components/Space/constants.d.ts +33 -0
  1429. package/lib/components/Space/constants.js +43 -0
  1430. package/lib/components/Space/index.d.ts +5 -0
  1431. package/lib/components/Space/index.js +53 -0
  1432. package/lib/components/Space/interface.d.ts +12 -0
  1433. package/lib/components/Space/interface.js +6 -0
  1434. package/lib/components/Space/style/Space.css +47 -0
  1435. package/lib/components/Space/style/css.js +4 -0
  1436. package/lib/components/Space/style/index.d.ts +1 -0
  1437. package/lib/components/Space/style/index.js +4 -0
  1438. package/lib/components/Spinner/Spinner.d.ts +6 -0
  1439. package/lib/components/Spinner/Spinner.js +230 -0
  1440. package/lib/components/Spinner/index.d.ts +4 -0
  1441. package/lib/components/Spinner/index.js +33 -0
  1442. package/lib/components/Spinner/interface.d.ts +18 -0
  1443. package/lib/components/Spinner/interface.js +8 -0
  1444. package/lib/components/Spinner/lottie-pure.json +1 -0
  1445. package/lib/components/Spinner/style/Spinner.css +99 -0
  1446. package/lib/components/Spinner/style/css.js +4 -0
  1447. package/lib/components/Spinner/style/index.d.ts +1 -0
  1448. package/lib/components/Spinner/style/index.js +4 -0
  1449. package/lib/components/Step/Step.d.ts +5 -0
  1450. package/lib/components/Step/Step.js +126 -0
  1451. package/lib/components/Step/constants.d.ts +59 -0
  1452. package/lib/components/Step/constants.js +72 -0
  1453. package/lib/components/Step/index.d.ts +4 -0
  1454. package/lib/components/Step/index.js +33 -0
  1455. package/lib/components/Step/interface.d.ts +22 -0
  1456. package/lib/components/Step/interface.js +6 -0
  1457. package/lib/components/Step/style/Step.css +107 -0
  1458. package/lib/components/Step/style/css.js +4 -0
  1459. package/lib/components/Step/style/index.d.ts +1 -0
  1460. package/lib/components/Step/style/index.js +4 -0
  1461. package/lib/components/Switch/Switch.d.ts +6 -0
  1462. package/lib/components/Switch/Switch.js +104 -0
  1463. package/lib/components/Switch/constants.d.ts +25 -0
  1464. package/lib/components/Switch/constants.js +33 -0
  1465. package/lib/components/Switch/index.d.ts +5 -0
  1466. package/lib/components/Switch/index.js +45 -0
  1467. package/lib/components/Switch/interface.d.ts +26 -0
  1468. package/lib/components/Switch/interface.js +6 -0
  1469. package/lib/components/Switch/style/Switch.css +102 -0
  1470. package/lib/components/Switch/style/css.js +5 -0
  1471. package/lib/components/Switch/style/index.d.ts +2 -0
  1472. package/lib/components/Switch/style/index.js +5 -0
  1473. package/lib/components/Table/Table.d.ts +10 -0
  1474. package/lib/components/Table/Table.js +47 -0
  1475. package/lib/components/Table/VirtualTable.d.ts +9 -0
  1476. package/lib/components/Table/VirtualTable.js +59 -0
  1477. package/lib/components/Table/constants.d.ts +4 -0
  1478. package/lib/components/Table/constants.js +11 -0
  1479. package/lib/components/Table/core/useTableColumns.d.ts +48 -0
  1480. package/lib/components/Table/core/useTableColumns.js +260 -0
  1481. package/lib/components/Table/core/useTableDataPipeline.d.ts +57 -0
  1482. package/lib/components/Table/core/useTableDataPipeline.js +435 -0
  1483. package/lib/components/Table/core/useTableExpand.d.ts +11 -0
  1484. package/lib/components/Table/core/useTableExpand.js +70 -0
  1485. package/lib/components/Table/core/useTableSelection.d.ts +15 -0
  1486. package/lib/components/Table/core/useTableSelection.js +151 -0
  1487. package/lib/components/Table/core/useTableSetup.d.ts +42 -0
  1488. package/lib/components/Table/core/useTableSetup.js +204 -0
  1489. package/lib/components/Table/features/ExpandTrigger.d.ts +4 -0
  1490. package/lib/components/Table/features/ExpandTrigger.js +38 -0
  1491. package/lib/components/Table/features/FilterTrigger.d.ts +9 -0
  1492. package/lib/components/Table/features/FilterTrigger.js +164 -0
  1493. package/lib/components/Table/features/SelectionColumn.d.ts +12 -0
  1494. package/lib/components/Table/features/SelectionColumn.js +60 -0
  1495. package/lib/components/Table/features/SortTrigger.d.ts +7 -0
  1496. package/lib/components/Table/features/SortTrigger.js +32 -0
  1497. package/lib/components/Table/index.d.ts +6 -0
  1498. package/lib/components/Table/index.js +47 -0
  1499. package/lib/components/Table/interface.d.ts +262 -0
  1500. package/lib/components/Table/interface.js +6 -0
  1501. package/lib/components/Table/internal/index.d.ts +3 -0
  1502. package/lib/components/Table/internal/index.js +52 -0
  1503. package/lib/components/Table/internal/kernel/Body/BodyRow.d.ts +37 -0
  1504. package/lib/components/Table/internal/kernel/Body/BodyRow.js +186 -0
  1505. package/lib/components/Table/internal/kernel/Body/ExpandedRow.d.ts +15 -0
  1506. package/lib/components/Table/internal/kernel/Body/ExpandedRow.js +67 -0
  1507. package/lib/components/Table/internal/kernel/Body/MeasureCell.d.ts +8 -0
  1508. package/lib/components/Table/internal/kernel/Body/MeasureCell.js +50 -0
  1509. package/lib/components/Table/internal/kernel/Body/MeasureRow.d.ts +10 -0
  1510. package/lib/components/Table/internal/kernel/Body/MeasureRow.js +64 -0
  1511. package/lib/components/Table/internal/kernel/Body/index.d.ts +9 -0
  1512. package/lib/components/Table/internal/kernel/Body/index.js +135 -0
  1513. package/lib/components/Table/internal/kernel/Cell/index.d.ts +39 -0
  1514. package/lib/components/Table/internal/kernel/Cell/index.js +190 -0
  1515. package/lib/components/Table/internal/kernel/Cell/useCellRender.d.ts +3 -0
  1516. package/lib/components/Table/internal/kernel/Cell/useCellRender.js +74 -0
  1517. package/lib/components/Table/internal/kernel/Cell/useHoverState.d.ts +2 -0
  1518. package/lib/components/Table/internal/kernel/Cell/useHoverState.js +23 -0
  1519. package/lib/components/Table/internal/kernel/ColGroup.d.ts +8 -0
  1520. package/lib/components/Table/internal/kernel/ColGroup.js +68 -0
  1521. package/lib/components/Table/internal/kernel/FixedHolder/index.d.ts +27 -0
  1522. package/lib/components/Table/internal/kernel/FixedHolder/index.js +192 -0
  1523. package/lib/components/Table/internal/kernel/Footer/Cell.d.ts +11 -0
  1524. package/lib/components/Table/internal/kernel/Footer/Cell.js +60 -0
  1525. package/lib/components/Table/internal/kernel/Footer/Row.d.ts +8 -0
  1526. package/lib/components/Table/internal/kernel/Footer/Row.js +31 -0
  1527. package/lib/components/Table/internal/kernel/Footer/Summary.d.ts +14 -0
  1528. package/lib/components/Table/internal/kernel/Footer/Summary.js +20 -0
  1529. package/lib/components/Table/internal/kernel/Footer/SummaryContext.d.ts +11 -0
  1530. package/lib/components/Table/internal/kernel/Footer/SummaryContext.js +13 -0
  1531. package/lib/components/Table/internal/kernel/Footer/index.d.ts +16 -0
  1532. package/lib/components/Table/internal/kernel/Footer/index.js +47 -0
  1533. package/lib/components/Table/internal/kernel/Header/Header.d.ts +9 -0
  1534. package/lib/components/Table/internal/kernel/Header/Header.js +120 -0
  1535. package/lib/components/Table/internal/kernel/Header/HeaderRow.d.ts +18 -0
  1536. package/lib/components/Table/internal/kernel/Header/HeaderRow.js +71 -0
  1537. package/lib/components/Table/internal/kernel/Panel/index.d.ts +7 -0
  1538. package/lib/components/Table/internal/kernel/Panel/index.js +25 -0
  1539. package/lib/components/Table/internal/kernel/Table.d.ts +126 -0
  1540. package/lib/components/Table/internal/kernel/Table.js +695 -0
  1541. package/lib/components/Table/internal/kernel/VirtualTable/BodyGrid.d.ts +13 -0
  1542. package/lib/components/Table/internal/kernel/VirtualTable/BodyGrid.js +298 -0
  1543. package/lib/components/Table/internal/kernel/VirtualTable/BodyLine.d.ts +14 -0
  1544. package/lib/components/Table/internal/kernel/VirtualTable/BodyLine.js +125 -0
  1545. package/lib/components/Table/internal/kernel/VirtualTable/VirtualCell.d.ts +26 -0
  1546. package/lib/components/Table/internal/kernel/VirtualTable/VirtualCell.js +117 -0
  1547. package/lib/components/Table/internal/kernel/VirtualTable/context.d.ts +13 -0
  1548. package/lib/components/Table/internal/kernel/VirtualTable/context.js +12 -0
  1549. package/lib/components/Table/internal/kernel/VirtualTable/index.d.ts +17 -0
  1550. package/lib/components/Table/internal/kernel/VirtualTable/index.js +100 -0
  1551. package/lib/components/Table/internal/kernel/constant.d.ts +2 -0
  1552. package/lib/components/Table/internal/kernel/constant.js +10 -0
  1553. package/lib/components/Table/internal/kernel/context/PerfContext.d.ts +6 -0
  1554. package/lib/components/Table/internal/kernel/context/PerfContext.js +18 -0
  1555. package/lib/components/Table/internal/kernel/context/TableContext.d.ts +51 -0
  1556. package/lib/components/Table/internal/kernel/context/TableContext.js +16 -0
  1557. package/lib/components/Table/internal/kernel/hooks/useColumns/index.d.ts +31 -0
  1558. package/lib/components/Table/internal/kernel/hooks/useColumns/index.js +223 -0
  1559. package/lib/components/Table/internal/kernel/hooks/useColumns/useWidthColumns.d.ts +5 -0
  1560. package/lib/components/Table/internal/kernel/hooks/useColumns/useWidthColumns.js +79 -0
  1561. package/lib/components/Table/internal/kernel/hooks/useExpand.d.ts +10 -0
  1562. package/lib/components/Table/internal/kernel/hooks/useExpand.js +94 -0
  1563. package/lib/components/Table/internal/kernel/hooks/useFixedInfo.d.ts +2 -0
  1564. package/lib/components/Table/internal/kernel/hooks/useFixedInfo.js +29 -0
  1565. package/lib/components/Table/internal/kernel/hooks/useFlattenRecords.d.ts +19 -0
  1566. package/lib/components/Table/internal/kernel/hooks/useFlattenRecords.js +64 -0
  1567. package/lib/components/Table/internal/kernel/hooks/useFrame.d.ts +7 -0
  1568. package/lib/components/Table/internal/kernel/hooks/useFrame.js +72 -0
  1569. package/lib/components/Table/internal/kernel/hooks/useHover.d.ts +2 -0
  1570. package/lib/components/Table/internal/kernel/hooks/useHover.js +30 -0
  1571. package/lib/components/Table/internal/kernel/hooks/useRenderTimes.d.ts +5 -0
  1572. package/lib/components/Table/internal/kernel/hooks/useRenderTimes.js +51 -0
  1573. package/lib/components/Table/internal/kernel/hooks/useRowInfo.d.ts +11 -0
  1574. package/lib/components/Table/internal/kernel/hooks/useRowInfo.js +70 -0
  1575. package/lib/components/Table/internal/kernel/hooks/useSticky.d.ts +10 -0
  1576. package/lib/components/Table/internal/kernel/hooks/useSticky.js +44 -0
  1577. package/lib/components/Table/internal/kernel/hooks/useStickyOffsets.d.ts +6 -0
  1578. package/lib/components/Table/internal/kernel/hooks/useStickyOffsets.js +38 -0
  1579. package/lib/components/Table/internal/kernel/index.d.ts +12 -0
  1580. package/lib/components/Table/internal/kernel/index.js +74 -0
  1581. package/lib/components/Table/internal/kernel/interface.d.ts +202 -0
  1582. package/lib/components/Table/internal/kernel/interface.js +6 -0
  1583. package/lib/components/Table/internal/kernel/namePathType.d.ts +13 -0
  1584. package/lib/components/Table/internal/kernel/namePathType.js +6 -0
  1585. package/lib/components/Table/internal/kernel/selector-context/Immutable.d.ts +10 -0
  1586. package/lib/components/Table/internal/kernel/selector-context/Immutable.js +82 -0
  1587. package/lib/components/Table/internal/kernel/selector-context/context.d.ts +26 -0
  1588. package/lib/components/Table/internal/kernel/selector-context/context.js +93 -0
  1589. package/lib/components/Table/internal/kernel/selector-context/index.d.ts +7 -0
  1590. package/lib/components/Table/internal/kernel/selector-context/index.js +34 -0
  1591. package/lib/components/Table/internal/kernel/selector-context/isEqual.d.ts +5 -0
  1592. package/lib/components/Table/internal/kernel/selector-context/isEqual.js +55 -0
  1593. package/lib/components/Table/internal/kernel/stickyScrollBar.d.ts +12 -0
  1594. package/lib/components/Table/internal/kernel/stickyScrollBar.js +203 -0
  1595. package/lib/components/Table/internal/kernel/sugar/Column.d.ts +10 -0
  1596. package/lib/components/Table/internal/kernel/sugar/Column.js +17 -0
  1597. package/lib/components/Table/internal/kernel/sugar/ColumnGroup.d.ts +12 -0
  1598. package/lib/components/Table/internal/kernel/sugar/ColumnGroup.js +17 -0
  1599. package/lib/components/Table/internal/kernel/utils/dom/canUseDom.d.ts +1 -0
  1600. package/lib/components/Table/internal/kernel/utils/dom/canUseDom.js +10 -0
  1601. package/lib/components/Table/internal/kernel/utils/dom/isVisible.d.ts +2 -0
  1602. package/lib/components/Table/internal/kernel/utils/dom/isVisible.js +34 -0
  1603. package/lib/components/Table/internal/kernel/utils/expandUtil.d.ts +4 -0
  1604. package/lib/components/Table/internal/kernel/utils/expandUtil.js +60 -0
  1605. package/lib/components/Table/internal/kernel/utils/fixUtil.d.ts +21 -0
  1606. package/lib/components/Table/internal/kernel/utils/fixUtil.js +70 -0
  1607. package/lib/components/Table/internal/kernel/utils/get.d.ts +1 -0
  1608. package/lib/components/Table/internal/kernel/utils/get.js +17 -0
  1609. package/lib/components/Table/internal/kernel/utils/getScrollBarSize.d.ts +7 -0
  1610. package/lib/components/Table/internal/kernel/utils/getScrollBarSize.js +45 -0
  1611. package/lib/components/Table/internal/kernel/utils/legacyUtil.d.ts +5 -0
  1612. package/lib/components/Table/internal/kernel/utils/legacyUtil.js +40 -0
  1613. package/lib/components/Table/internal/kernel/utils/offsetUtil.d.ts +4 -0
  1614. package/lib/components/Table/internal/kernel/utils/offsetUtil.js +20 -0
  1615. package/lib/components/Table/internal/kernel/utils/pickAttrs.d.ts +6 -0
  1616. package/lib/components/Table/internal/kernel/utils/pickAttrs.js +39 -0
  1617. package/lib/components/Table/internal/kernel/utils/useMemo.d.ts +1 -0
  1618. package/lib/components/Table/internal/kernel/utils/useMemo.js +19 -0
  1619. package/lib/components/Table/internal/kernel/utils/valueUtil.d.ts +8 -0
  1620. package/lib/components/Table/internal/kernel/utils/valueUtil.js +38 -0
  1621. package/lib/components/Table/internal/kernel/utils/warning.d.ts +4 -0
  1622. package/lib/components/Table/internal/kernel/utils/warning.js +26 -0
  1623. package/lib/components/Table/renderers/BodyCell.d.ts +15 -0
  1624. package/lib/components/Table/renderers/BodyCell.js +47 -0
  1625. package/lib/components/Table/renderers/CellContent.d.ts +4 -0
  1626. package/lib/components/Table/renderers/CellContent.js +32 -0
  1627. package/lib/components/Table/renderers/EmptyState.d.ts +5 -0
  1628. package/lib/components/Table/renderers/EmptyState.js +29 -0
  1629. package/lib/components/Table/renderers/ExpandedRowContainer.d.ts +4 -0
  1630. package/lib/components/Table/renderers/ExpandedRowContainer.js +16 -0
  1631. package/lib/components/Table/renderers/HeaderCell.d.ts +11 -0
  1632. package/lib/components/Table/renderers/HeaderCell.js +38 -0
  1633. package/lib/components/Table/style/Table.css +370 -0
  1634. package/lib/components/Table/style/css.js +12 -0
  1635. package/lib/components/Table/style/index.d.ts +9 -0
  1636. package/lib/components/Table/style/index.js +12 -0
  1637. package/lib/components/Tabs/Tabs.d.ts +6 -0
  1638. package/lib/components/Tabs/Tabs.js +123 -0
  1639. package/lib/components/Tabs/index.d.ts +4 -0
  1640. package/lib/components/Tabs/index.js +33 -0
  1641. package/lib/components/Tabs/interface.d.ts +29 -0
  1642. package/lib/components/Tabs/interface.js +6 -0
  1643. package/lib/components/Tabs/style/Tabs.css +118 -0
  1644. package/lib/components/Tabs/style/css.js +4 -0
  1645. package/lib/components/Tabs/style/index.d.ts +1 -0
  1646. package/lib/components/Tabs/style/index.js +4 -0
  1647. package/lib/components/Tag/Tag.d.ts +6 -0
  1648. package/lib/components/Tag/Tag.js +89 -0
  1649. package/lib/components/Tag/constants.d.ts +18 -0
  1650. package/lib/components/Tag/constants.js +34 -0
  1651. package/lib/components/Tag/index.d.ts +5 -0
  1652. package/lib/components/Tag/index.js +45 -0
  1653. package/lib/components/Tag/interface.d.ts +15 -0
  1654. package/lib/components/Tag/interface.js +6 -0
  1655. package/lib/components/Tag/style/Tag.css +87 -0
  1656. package/lib/components/Tag/style/css.js +4 -0
  1657. package/lib/components/Tag/style/index.d.ts +1 -0
  1658. package/lib/components/Tag/style/index.js +4 -0
  1659. package/lib/components/Tooltip/Tooltip.d.ts +6 -0
  1660. package/lib/components/Tooltip/Tooltip.js +80 -0
  1661. package/lib/components/Tooltip/index.d.ts +4 -0
  1662. package/lib/components/Tooltip/index.js +33 -0
  1663. package/lib/components/Tooltip/interface.d.ts +22 -0
  1664. package/lib/components/Tooltip/interface.js +6 -0
  1665. package/lib/components/Tooltip/style/Tooltip.css +98 -0
  1666. package/lib/components/Tooltip/style/css.js +4 -0
  1667. package/lib/components/Tooltip/style/index.d.ts +1 -0
  1668. package/lib/components/Tooltip/style/index.js +4 -0
  1669. package/lib/components/Tour/Tour.d.ts +3 -0
  1670. package/lib/components/Tour/Tour.js +250 -0
  1671. package/lib/components/Tour/index.d.ts +4 -0
  1672. package/lib/components/Tour/index.js +33 -0
  1673. package/lib/components/Tour/interface.d.ts +46 -0
  1674. package/lib/components/Tour/interface.js +6 -0
  1675. package/lib/components/Trigger/Trigger.d.ts +5 -0
  1676. package/lib/components/Trigger/Trigger.js +203 -0
  1677. package/lib/components/Trigger/index.d.ts +3 -0
  1678. package/lib/components/Trigger/index.js +35 -0
  1679. package/lib/components/Trigger/interface.d.ts +77 -0
  1680. package/lib/components/Trigger/interface.js +6 -0
  1681. package/lib/components/Trigger/style/Trigger.css +35 -0
  1682. package/lib/components/Trigger/style/css.js +4 -0
  1683. package/lib/components/Trigger/style/index.d.ts +1 -0
  1684. package/lib/components/Trigger/style/index.js +4 -0
  1685. package/lib/components/Typography/Typography.d.ts +17 -0
  1686. package/lib/components/Typography/Typography.js +207 -0
  1687. package/lib/components/Typography/constants.d.ts +33 -0
  1688. package/lib/components/Typography/constants.js +15 -0
  1689. package/lib/components/Typography/index.d.ts +4 -0
  1690. package/lib/components/Typography/index.js +79 -0
  1691. package/lib/components/Typography/interface.d.ts +72 -0
  1692. package/lib/components/Typography/interface.js +28 -0
  1693. package/lib/components/Typography/render.d.ts +328 -0
  1694. package/lib/components/Typography/render.js +116 -0
  1695. package/lib/components/Typography/style/Typography.css +444 -0
  1696. package/lib/components/Typography/style/css.js +6 -0
  1697. package/lib/components/Typography/style/index.d.ts +3 -0
  1698. package/lib/components/Typography/style/index.js +6 -0
  1699. package/lib/components/Typography/useTypographyEnhancements.d.ts +43 -0
  1700. package/lib/components/Typography/useTypographyEnhancements.js +118 -0
  1701. package/lib/components/Typography/utils.d.ts +17 -0
  1702. package/lib/components/Typography/utils.js +105 -0
  1703. package/lib/components/Upload/Upload.d.ts +7 -0
  1704. package/lib/components/Upload/Upload.js +97 -0
  1705. package/lib/components/Upload/UploadFileBar.d.ts +6 -0
  1706. package/lib/components/Upload/UploadFileBar.js +78 -0
  1707. package/lib/components/Upload/index.d.ts +5 -0
  1708. package/lib/components/Upload/index.js +41 -0
  1709. package/lib/components/Upload/interface.d.ts +43 -0
  1710. package/lib/components/Upload/interface.js +6 -0
  1711. package/lib/components/Upload/style/Upload.css +55 -0
  1712. package/lib/components/Upload/style/UploadFileBar.css +88 -0
  1713. package/lib/components/Upload/style/css.js +5 -0
  1714. package/lib/components/Upload/style/index.d.ts +2 -0
  1715. package/lib/components/Upload/style/index.js +5 -0
  1716. package/lib/components/VirtualList/Filler.d.ts +21 -0
  1717. package/lib/components/VirtualList/Filler.js +66 -0
  1718. package/lib/components/VirtualList/Item.d.ts +6 -0
  1719. package/lib/components/VirtualList/Item.js +21 -0
  1720. package/lib/components/VirtualList/ScrollBar.d.ts +22 -0
  1721. package/lib/components/VirtualList/ScrollBar.js +246 -0
  1722. package/lib/components/VirtualList/VirtualList.d.ts +62 -0
  1723. package/lib/components/VirtualList/VirtualList.js +540 -0
  1724. package/lib/components/VirtualList/constants.d.ts +4 -0
  1725. package/lib/components/VirtualList/constants.js +11 -0
  1726. package/lib/components/VirtualList/hooks/useChildren.d.ts +2 -0
  1727. package/lib/components/VirtualList/hooks/useChildren.js +34 -0
  1728. package/lib/components/VirtualList/hooks/useDiffItem.d.ts +2 -0
  1729. package/lib/components/VirtualList/hooks/useDiffItem.js +25 -0
  1730. package/lib/components/VirtualList/hooks/useFrameWheel.d.ts +10 -0
  1731. package/lib/components/VirtualList/hooks/useFrameWheel.js +92 -0
  1732. package/lib/components/VirtualList/hooks/useGetSize.d.ts +7 -0
  1733. package/lib/components/VirtualList/hooks/useGetSize.js +57 -0
  1734. package/lib/components/VirtualList/hooks/useHeights.d.ts +8 -0
  1735. package/lib/components/VirtualList/hooks/useHeights.js +106 -0
  1736. package/lib/components/VirtualList/hooks/useMobileTouchMove.d.ts +2 -0
  1737. package/lib/components/VirtualList/hooks/useMobileTouchMove.js +91 -0
  1738. package/lib/components/VirtualList/hooks/useOriginScroll.d.ts +2 -0
  1739. package/lib/components/VirtualList/hooks/useOriginScroll.js +50 -0
  1740. package/lib/components/VirtualList/hooks/useScrollDrag.d.ts +3 -0
  1741. package/lib/components/VirtualList/hooks/useScrollDrag.js +87 -0
  1742. package/lib/components/VirtualList/hooks/useScrollTo.d.ts +18 -0
  1743. package/lib/components/VirtualList/hooks/useScrollTo.js +142 -0
  1744. package/lib/components/VirtualList/index.d.ts +9 -0
  1745. package/lib/components/VirtualList/index.js +31 -0
  1746. package/lib/components/VirtualList/interface.d.ts +26 -0
  1747. package/lib/components/VirtualList/interface.js +6 -0
  1748. package/lib/components/VirtualList/style/VirtualList.css +25 -0
  1749. package/lib/components/VirtualList/style/css.js +4 -0
  1750. package/lib/components/VirtualList/style/index.d.ts +1 -0
  1751. package/lib/components/VirtualList/style/index.js +4 -0
  1752. package/lib/components/VirtualList/utils/CacheMap.d.ts +16 -0
  1753. package/lib/components/VirtualList/utils/CacheMap.js +50 -0
  1754. package/lib/components/VirtualList/utils/algorithmUtil.d.ts +23 -0
  1755. package/lib/components/VirtualList/utils/algorithmUtil.js +84 -0
  1756. package/lib/components/VirtualList/utils/isFirefox.d.ts +2 -0
  1757. package/lib/components/VirtualList/utils/isFirefox.js +11 -0
  1758. package/lib/components/VirtualList/utils/raf.d.ts +9 -0
  1759. package/lib/components/VirtualList/utils/raf.js +53 -0
  1760. package/lib/components/VirtualList/utils/scrollbarUtil.d.ts +1 -0
  1761. package/lib/components/VirtualList/utils/scrollbarUtil.js +18 -0
  1762. package/lib/hooks/index.d.ts +2 -0
  1763. package/lib/hooks/index.js +13 -0
  1764. package/lib/hooks/useFloatingAnimation.d.ts +24 -0
  1765. package/lib/hooks/useFloatingAnimation.js +51 -0
  1766. package/lib/index.css +1 -0
  1767. package/lib/index.d.ts +92 -0
  1768. package/lib/index.js +519 -0
  1769. package/lib/stories/docs/ComponentDocsPage.js +244 -0
  1770. package/lib/stories/docs/componentDocMeta.js +101 -0
  1771. package/lib/stories/docs/storybook-docs.css +401 -0
  1772. package/lib/styles/index.css +5328 -0
  1773. package/lib/utils/classnames.d.ts +5 -0
  1774. package/lib/utils/classnames.js +25 -0
  1775. package/lib/utils/clipboard.d.ts +2 -0
  1776. package/lib/utils/clipboard.js +56 -0
  1777. package/lib/utils/ref.d.ts +4 -0
  1778. package/lib/utils/ref.js +41 -0
  1779. package/lib/utils/uuid.d.ts +2 -0
  1780. package/lib/utils/uuid.js +23 -0
  1781. package/package.json +1 -1
@@ -0,0 +1,695 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.genTable = exports["default"] = exports.DEFAULT_PREFIX = void 0;
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ var _clsx2 = require("clsx");
13
+ var _ResizeObserver = _interopRequireDefault(require("../../../ResizeObserver"));
14
+ var _getScrollBarSize = require("./utils/getScrollBarSize");
15
+ var _hooks = require("@1money/hooks");
16
+ var _pickAttrs = _interopRequireDefault(require("./utils/pickAttrs"));
17
+ var _get = _interopRequireDefault(require("./utils/get"));
18
+ var _warning = _interopRequireDefault(require("./utils/warning"));
19
+ var React = _interopRequireWildcard(require("react"));
20
+ var _Body = _interopRequireDefault(require("./Body"));
21
+ var _ColGroup = _interopRequireDefault(require("./ColGroup"));
22
+ var _constant = require("./constant");
23
+ var _TableContext = _interopRequireWildcard(require("./context/TableContext"));
24
+ var _FixedHolder = _interopRequireDefault(require("./FixedHolder"));
25
+ var _Footer = _interopRequireWildcard(require("./Footer"));
26
+ var _Summary = _interopRequireDefault(require("./Footer/Summary"));
27
+ var _Header = _interopRequireDefault(require("./Header/Header"));
28
+ var _useColumns3 = _interopRequireDefault(require("./hooks/useColumns"));
29
+ var _useExpand3 = _interopRequireDefault(require("./hooks/useExpand"));
30
+ var _useFixedInfo = _interopRequireDefault(require("./hooks/useFixedInfo"));
31
+ var _useFrame = require("./hooks/useFrame");
32
+ var _useHover3 = _interopRequireDefault(require("./hooks/useHover"));
33
+ var _useSticky2 = _interopRequireDefault(require("./hooks/useSticky"));
34
+ var _useStickyOffsets = _interopRequireDefault(require("./hooks/useStickyOffsets"));
35
+ var _Panel = _interopRequireDefault(require("./Panel"));
36
+ var _stickyScrollBar = _interopRequireDefault(require("./stickyScrollBar"));
37
+ var _Column = _interopRequireDefault(require("./sugar/Column"));
38
+ var _ColumnGroup = _interopRequireDefault(require("./sugar/ColumnGroup"));
39
+ var _valueUtil = require("./utils/valueUtil");
40
+ var _reactUtil = require("../../../ResizeObserver/utils/reactUtil");
41
+ var _isEqual = _interopRequireDefault(require("./selector-context/isEqual"));
42
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
43
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
44
+ var DEFAULT_PREFIX = exports.DEFAULT_PREFIX = 'om-table';
45
+ // Used for conditions cache
46
+ var EMPTY_DATA = [];
47
+ // Used for customize scroll
48
+ var EMPTY_SCROLL_TARGET = {};
49
+ function defaultEmpty() {
50
+ return 'No Data';
51
+ }
52
+ var Table = function Table(tableProps, ref) {
53
+ var _clsx;
54
+ var _a, _b;
55
+ var props = Object.assign({
56
+ rowKey: 'key',
57
+ prefixCls: DEFAULT_PREFIX,
58
+ emptyText: defaultEmpty
59
+ }, tableProps);
60
+ var prefixCls = props.prefixCls,
61
+ className = props.className,
62
+ rowClassName = props.rowClassName,
63
+ style = props.style,
64
+ classNames = props.classNames,
65
+ styles = props.styles,
66
+ data = props.data,
67
+ rowKey = props.rowKey,
68
+ scroll = props.scroll,
69
+ tableLayout = props.tableLayout,
70
+ direction = props.direction,
71
+ title = props.title,
72
+ footer = props.footer,
73
+ summary = props.summary,
74
+ caption = props.caption,
75
+ id = props.id,
76
+ showHeader = props.showHeader,
77
+ components = props.components,
78
+ emptyText = props.emptyText,
79
+ onRow = props.onRow,
80
+ onHeaderRow = props.onHeaderRow,
81
+ measureRowRender = props.measureRowRender,
82
+ onScroll = props.onScroll,
83
+ internalHooks = props.internalHooks,
84
+ transformColumns = props.transformColumns,
85
+ internalRefs = props.internalRefs,
86
+ tailor = props.tailor,
87
+ getContainerWidth = props.getContainerWidth,
88
+ sticky = props.sticky,
89
+ _props$rowHoverable = props.rowHoverable,
90
+ rowHoverable = _props$rowHoverable === void 0 ? true : _props$rowHoverable;
91
+ var mergedData = data || EMPTY_DATA;
92
+ var hasData = !!mergedData.length;
93
+ var useInternalHooks = internalHooks === _constant.INTERNAL_HOOKS;
94
+ // ===================== Warning ======================
95
+ if (process.env.NODE_ENV !== 'production') {
96
+ ['onRowClick', 'onRowDoubleClick', 'onRowContextMenu', 'onRowMouseEnter', 'onRowMouseLeave'].forEach(function (name) {
97
+ (0, _warning["default"])(props[name] === undefined, "`".concat(name, "` is removed, please use `onRow` instead."));
98
+ });
99
+ (0, _warning["default"])(!('getBodyWrapper' in props), '`getBodyWrapper` is deprecated, please use custom `components` instead.');
100
+ }
101
+ // ==================== Customize =====================
102
+ var getComponent = React.useCallback(function (path, defaultComponent) {
103
+ return (0, _get["default"])(components, path) || defaultComponent;
104
+ }, [components]);
105
+ var getRowKey = React.useMemo(function () {
106
+ if (typeof rowKey === 'function') {
107
+ return rowKey;
108
+ }
109
+ return function (record) {
110
+ var key = record && record[rowKey];
111
+ if (process.env.NODE_ENV !== 'production') {
112
+ (0, _warning["default"])(key !== undefined, 'Each record in table should have a unique `key` prop, or set `rowKey` to an unique primary key.');
113
+ }
114
+ return key;
115
+ };
116
+ }, [rowKey]);
117
+ var customizeScrollBody = getComponent(['body']);
118
+ // ====================== Hover =======================
119
+ var _useHover = (0, _useHover3["default"])(),
120
+ _useHover2 = (0, _slicedToArray2["default"])(_useHover, 3),
121
+ startRow = _useHover2[0],
122
+ endRow = _useHover2[1],
123
+ onHover = _useHover2[2];
124
+ // ====================== Expand ======================
125
+ var _useExpand = (0, _useExpand3["default"])(props, mergedData, getRowKey),
126
+ _useExpand2 = (0, _slicedToArray2["default"])(_useExpand, 6),
127
+ expandableConfig = _useExpand2[0],
128
+ expandableType = _useExpand2[1],
129
+ mergedExpandedKeys = _useExpand2[2],
130
+ mergedExpandIcon = _useExpand2[3],
131
+ mergedChildrenColumnName = _useExpand2[4],
132
+ onTriggerExpand = _useExpand2[5];
133
+ // ====================== Column ======================
134
+ var scrollX = scroll === null || scroll === void 0 ? void 0 : scroll.x;
135
+ var _React$useState = React.useState(0),
136
+ _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
137
+ componentWidth = _React$useState2[0],
138
+ setComponentWidth = _React$useState2[1];
139
+ var _useColumns = (0, _useColumns3["default"])(Object.assign(Object.assign(Object.assign({}, props), expandableConfig), {
140
+ expandable: !!expandableConfig.expandedRowRender,
141
+ columnTitle: expandableConfig.columnTitle,
142
+ expandedKeys: mergedExpandedKeys,
143
+ getRowKey: getRowKey,
144
+ onTriggerExpand: onTriggerExpand,
145
+ expandIcon: mergedExpandIcon,
146
+ expandIconColumnIndex: expandableConfig.expandIconColumnIndex,
147
+ direction: direction,
148
+ scrollWidth: useInternalHooks && tailor && typeof scrollX === 'number' ? scrollX : null,
149
+ clientWidth: componentWidth
150
+ }), useInternalHooks ? transformColumns : null),
151
+ _useColumns2 = (0, _slicedToArray2["default"])(_useColumns, 3),
152
+ columns = _useColumns2[0],
153
+ flattenColumns = _useColumns2[1],
154
+ flattenScrollX = _useColumns2[2];
155
+ var mergedScrollX = flattenScrollX !== null && flattenScrollX !== void 0 ? flattenScrollX : scrollX;
156
+ var columnContext = React.useMemo(function () {
157
+ return {
158
+ columns: columns,
159
+ flattenColumns: flattenColumns
160
+ };
161
+ }, [columns, flattenColumns]);
162
+ // ======================= Refs =======================
163
+ var fullTableRef = React.useRef(null);
164
+ var scrollHeaderRef = React.useRef(null);
165
+ var scrollBodyRef = React.useRef(null);
166
+ var scrollBodyContainerRef = React.useRef(null);
167
+ React.useImperativeHandle(ref, function () {
168
+ return {
169
+ nativeElement: fullTableRef.current,
170
+ scrollTo: function scrollTo(config) {
171
+ var _a, _b;
172
+ if (scrollBodyRef.current instanceof HTMLElement) {
173
+ // Native scroll
174
+ var index = config.index,
175
+ top = config.top,
176
+ key = config.key,
177
+ offset = config.offset;
178
+ if ((0, _valueUtil.validNumberValue)(top)) {
179
+ // In top mode, offset is ignored
180
+ (_a = scrollBodyRef.current) === null || _a === void 0 ? void 0 : _a.scrollTo({
181
+ top: top
182
+ });
183
+ } else {
184
+ var mergedKey = key !== null && key !== void 0 ? key : getRowKey(mergedData[index]);
185
+ var targetElement = scrollBodyRef.current.querySelector("[data-row-key=\"".concat(mergedKey, "\"]"));
186
+ if (targetElement) {
187
+ if (!offset) {
188
+ // No offset, use scrollIntoView for default behavior
189
+ targetElement.scrollIntoView();
190
+ } else {
191
+ // With offset, use element's offsetTop + offset
192
+ var elementTop = targetElement.offsetTop;
193
+ scrollBodyRef.current.scrollTo({
194
+ top: elementTop + offset
195
+ });
196
+ }
197
+ }
198
+ }
199
+ } else if ((_b = scrollBodyRef.current) === null || _b === void 0 ? void 0 : _b.scrollTo) {
200
+ // Pass to proxy
201
+ scrollBodyRef.current.scrollTo(config);
202
+ }
203
+ }
204
+ };
205
+ });
206
+ // ====================== Scroll ======================
207
+ var scrollSummaryRef = React.useRef(null);
208
+ var _React$useState3 = React.useState(false),
209
+ _React$useState4 = (0, _slicedToArray2["default"])(_React$useState3, 2),
210
+ shadowStart = _React$useState4[0],
211
+ setShadowStart = _React$useState4[1];
212
+ var _React$useState5 = React.useState(false),
213
+ _React$useState6 = (0, _slicedToArray2["default"])(_React$useState5, 2),
214
+ shadowEnd = _React$useState6[0],
215
+ setShadowEnd = _React$useState6[1];
216
+ var _React$useState7 = React.useState(new Map()),
217
+ _React$useState8 = (0, _slicedToArray2["default"])(_React$useState7, 2),
218
+ colsWidths = _React$useState8[0],
219
+ updateColsWidths = _React$useState8[1];
220
+ // Convert map to number width
221
+ var colsKeys = (0, _valueUtil.getColumnsKey)(flattenColumns);
222
+ var pureColWidths = colsKeys.map(function (columnKey) {
223
+ return colsWidths.get(columnKey);
224
+ });
225
+ var colWidths = React.useMemo(function () {
226
+ return pureColWidths;
227
+ }, [pureColWidths.join('_')]);
228
+ var stickyOffsets = (0, _useStickyOffsets["default"])(colWidths, flattenColumns);
229
+ var fixHeader = scroll && (0, _valueUtil.validateValue)(scroll.y);
230
+ var horizonScroll = scroll && (0, _valueUtil.validateValue)(mergedScrollX) || Boolean(expandableConfig.fixed);
231
+ var fixColumn = horizonScroll && flattenColumns.some(function (_ref) {
232
+ var fixed = _ref.fixed;
233
+ return fixed;
234
+ });
235
+ // Sticky
236
+ var stickyRef = React.useRef(null);
237
+ var _useSticky = (0, _useSticky2["default"])(sticky, prefixCls),
238
+ isSticky = _useSticky.isSticky,
239
+ offsetHeader = _useSticky.offsetHeader,
240
+ offsetSummary = _useSticky.offsetSummary,
241
+ offsetScroll = _useSticky.offsetScroll,
242
+ stickyClassName = _useSticky.stickyClassName,
243
+ container = _useSticky.container;
244
+ // Footer (Fix footer must fixed header)
245
+ var summaryNode = React.useMemo(function () {
246
+ return summary === null || summary === void 0 ? void 0 : summary(mergedData);
247
+ }, [summary, mergedData]);
248
+ var fixFooter = (fixHeader || isSticky) && /*#__PURE__*/React.isValidElement(summaryNode) && summaryNode.type === _Summary["default"] && summaryNode.props.fixed;
249
+ // Scroll
250
+ var scrollXStyle;
251
+ var scrollYStyle;
252
+ var scrollTableStyle;
253
+ if (fixHeader) {
254
+ scrollYStyle = {
255
+ overflowY: hasData ? 'scroll' : 'auto',
256
+ maxHeight: scroll.y
257
+ };
258
+ }
259
+ if (horizonScroll) {
260
+ scrollXStyle = {
261
+ overflowX: 'auto'
262
+ };
263
+ // When no vertical scrollbar, should hide it
264
+ if (!fixHeader) {
265
+ scrollYStyle = {
266
+ overflowY: 'hidden'
267
+ };
268
+ }
269
+ scrollTableStyle = {
270
+ width: mergedScrollX === true ? 'auto' : mergedScrollX,
271
+ minWidth: '100%'
272
+ };
273
+ }
274
+ var onColumnResize = React.useCallback(function (columnKey, width) {
275
+ updateColsWidths(function (widths) {
276
+ if (widths.get(columnKey) !== width) {
277
+ var newWidths = new Map(widths);
278
+ newWidths.set(columnKey, width);
279
+ return newWidths;
280
+ }
281
+ return widths;
282
+ });
283
+ }, []);
284
+ var _useTimeoutLock = (0, _useFrame.useTimeoutLock)(null),
285
+ _useTimeoutLock2 = (0, _slicedToArray2["default"])(_useTimeoutLock, 2),
286
+ setScrollTarget = _useTimeoutLock2[0],
287
+ getScrollTarget = _useTimeoutLock2[1];
288
+ function forceScroll(scrollLeft, target) {
289
+ if (!target) {
290
+ return;
291
+ }
292
+ if (typeof target === 'function') {
293
+ target(scrollLeft);
294
+ } else if (target.scrollLeft !== scrollLeft) {
295
+ target.scrollLeft = scrollLeft;
296
+ // Delay to force scroll position if not sync
297
+ if (target.scrollLeft !== scrollLeft) {
298
+ setTimeout(function () {
299
+ target.scrollLeft = scrollLeft;
300
+ }, 0);
301
+ }
302
+ }
303
+ }
304
+ var _React$useState9 = React.useState([0, 0]),
305
+ _React$useState10 = (0, _slicedToArray2["default"])(_React$useState9, 2),
306
+ scrollInfo = _React$useState10[0],
307
+ setScrollInfo = _React$useState10[1];
308
+ var onInternalScroll = (0, _hooks.useEventCallback)(function (_ref2) {
309
+ var currentTarget = _ref2.currentTarget,
310
+ scrollLeft = _ref2.scrollLeft;
311
+ var _a;
312
+ var mergedScrollLeft = typeof scrollLeft === 'number' ? scrollLeft : currentTarget.scrollLeft;
313
+ var compareTarget = currentTarget || EMPTY_SCROLL_TARGET;
314
+ if (!getScrollTarget() || getScrollTarget() === compareTarget) {
315
+ setScrollTarget(compareTarget);
316
+ forceScroll(mergedScrollLeft, scrollHeaderRef.current);
317
+ forceScroll(mergedScrollLeft, scrollBodyRef.current);
318
+ forceScroll(mergedScrollLeft, scrollSummaryRef.current);
319
+ forceScroll(mergedScrollLeft, (_a = stickyRef.current) === null || _a === void 0 ? void 0 : _a.setScrollLeft);
320
+ }
321
+ var measureTarget = currentTarget || scrollHeaderRef.current;
322
+ if (measureTarget) {
323
+ var scrollWidth =
324
+ // Should use mergedScrollX in virtual table(useInternalHooks && tailor === true)
325
+ useInternalHooks && tailor && typeof mergedScrollX === 'number' ? mergedScrollX : measureTarget.scrollWidth;
326
+ var clientWidth = measureTarget.clientWidth;
327
+ var absScrollStart = Math.abs(mergedScrollLeft);
328
+ setScrollInfo(function (ori) {
329
+ var nextScrollInfo = [absScrollStart, scrollWidth - clientWidth];
330
+ return (0, _isEqual["default"])(ori, nextScrollInfo) ? ori : nextScrollInfo;
331
+ });
332
+ // There is no space to scroll
333
+ if (scrollWidth === clientWidth) {
334
+ setShadowStart(false);
335
+ setShadowEnd(false);
336
+ return;
337
+ }
338
+ setShadowStart(absScrollStart > 0);
339
+ setShadowEnd(absScrollStart < scrollWidth - clientWidth - 1);
340
+ }
341
+ });
342
+ var onBodyScroll = (0, _hooks.useEventCallback)(function (e) {
343
+ onInternalScroll(e);
344
+ onScroll === null || onScroll === void 0 ? void 0 : onScroll(e);
345
+ });
346
+ var triggerOnScroll = function triggerOnScroll() {
347
+ var _a;
348
+ if (horizonScroll && scrollBodyRef.current) {
349
+ onInternalScroll({
350
+ currentTarget: (0, _reactUtil.getDOM)(scrollBodyRef.current),
351
+ scrollLeft: (_a = scrollBodyRef.current) === null || _a === void 0 ? void 0 : _a.scrollLeft
352
+ });
353
+ } else {
354
+ setShadowStart(false);
355
+ setShadowEnd(false);
356
+ }
357
+ };
358
+ var onFullTableResize = function onFullTableResize(offsetWidth) {
359
+ var _a, _b, _c;
360
+ (_a = stickyRef.current) === null || _a === void 0 ? void 0 : _a.checkScrollBarVisible();
361
+ var mergedWidth = (_c = offsetWidth !== null && offsetWidth !== void 0 ? offsetWidth : (_b = fullTableRef.current) === null || _b === void 0 ? void 0 : _b.offsetWidth) !== null && _c !== void 0 ? _c : 0;
362
+ if (useInternalHooks && getContainerWidth && fullTableRef.current) {
363
+ mergedWidth = getContainerWidth(fullTableRef.current, mergedWidth) || mergedWidth;
364
+ }
365
+ if (mergedWidth !== componentWidth) {
366
+ triggerOnScroll();
367
+ setComponentWidth(mergedWidth);
368
+ }
369
+ };
370
+ (0, _hooks.useLayoutEffect)(function () {
371
+ if (horizonScroll) {
372
+ onFullTableResize();
373
+ }
374
+ }, [horizonScroll]);
375
+ // Sync scroll bar when init or `horizonScroll`, `data` and `columns.length` changed
376
+ var mounted = React.useRef(false);
377
+ React.useEffect(function () {
378
+ // onFullTableResize will be trigger once when ResizeObserver is mounted
379
+ // This will reduce one duplicated triggerOnScroll time
380
+ if (mounted.current) {
381
+ triggerOnScroll();
382
+ }
383
+ }, [horizonScroll, data, columns.length]);
384
+ React.useEffect(function () {
385
+ mounted.current = true;
386
+ }, []);
387
+ // ===================== Effects ======================
388
+ var _React$useState11 = React.useState(0),
389
+ _React$useState12 = (0, _slicedToArray2["default"])(_React$useState11, 2),
390
+ scrollbarSize = _React$useState12[0],
391
+ setScrollbarSize = _React$useState12[1];
392
+ (0, _hooks.useLayoutEffect)(function () {
393
+ if (!tailor || !useInternalHooks) {
394
+ if (scrollBodyRef.current instanceof Element) {
395
+ setScrollbarSize((0, _getScrollBarSize.getTargetScrollBarSize)(scrollBodyRef.current).width);
396
+ } else {
397
+ setScrollbarSize((0, _getScrollBarSize.getTargetScrollBarSize)(scrollBodyContainerRef.current).width);
398
+ }
399
+ }
400
+ }, []);
401
+ // ================== INTERNAL HOOKS ==================
402
+ React.useEffect(function () {
403
+ if (useInternalHooks && internalRefs) {
404
+ internalRefs.body.current = scrollBodyRef.current;
405
+ }
406
+ });
407
+ // ========================================================================
408
+ // == Render ==
409
+ // ========================================================================
410
+ // =================== Render: Func ===================
411
+ var renderFixedHeaderTable = React.useCallback(function (fixedHolderPassProps) {
412
+ return (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
413
+ children: [(0, _jsxRuntime.jsx)(_Header["default"], Object.assign({}, fixedHolderPassProps)), fixFooter === 'top' && (0, _jsxRuntime.jsx)(_Footer["default"], Object.assign({}, fixedHolderPassProps, {
414
+ children: summaryNode
415
+ }))]
416
+ });
417
+ }, [fixFooter, summaryNode]);
418
+ var renderFixedFooterTable = React.useCallback(function (fixedHolderPassProps) {
419
+ return (0, _jsxRuntime.jsx)(_Footer["default"], Object.assign({}, fixedHolderPassProps, {
420
+ children: summaryNode
421
+ }));
422
+ }, [summaryNode]);
423
+ // =================== Render: Node ===================
424
+ var TableComponent = getComponent(['table'], 'table');
425
+ // Table layout
426
+ var mergedTableLayout = React.useMemo(function () {
427
+ if (tableLayout) {
428
+ return tableLayout;
429
+ }
430
+ // When scroll.x is max-content, no need to fix table layout
431
+ // it's width should stretch out to fit content
432
+ if (fixColumn) {
433
+ return mergedScrollX === 'max-content' ? 'auto' : 'fixed';
434
+ }
435
+ if (fixHeader || isSticky || flattenColumns.some(function (_ref3) {
436
+ var ellipsis = _ref3.ellipsis;
437
+ return ellipsis;
438
+ })) {
439
+ return 'fixed';
440
+ }
441
+ return 'auto';
442
+ }, [fixHeader, fixColumn, flattenColumns, tableLayout, isSticky]);
443
+ var groupTableNode;
444
+ // Header props
445
+ var headerProps = {
446
+ colWidths: colWidths,
447
+ columCount: flattenColumns.length,
448
+ stickyOffsets: stickyOffsets,
449
+ onHeaderRow: onHeaderRow,
450
+ fixHeader: fixHeader,
451
+ scroll: scroll
452
+ };
453
+ // Empty
454
+ var emptyNode = React.useMemo(function () {
455
+ if (hasData) {
456
+ return null;
457
+ }
458
+ if (typeof emptyText === 'function') {
459
+ return emptyText();
460
+ }
461
+ return emptyText;
462
+ }, [hasData, emptyText]);
463
+ // Body
464
+ var bodyTable = (0, _jsxRuntime.jsx)(_Body["default"], {
465
+ data: mergedData,
466
+ measureColumnWidth: fixHeader || horizonScroll || isSticky
467
+ });
468
+ var bodyColGroup = (0, _jsxRuntime.jsx)(_ColGroup["default"], {
469
+ colWidths: flattenColumns.map(function (_ref4) {
470
+ var width = _ref4.width;
471
+ return width;
472
+ }),
473
+ columns: flattenColumns
474
+ });
475
+ var captionElement = caption !== null && caption !== undefined ? (0, _jsxRuntime.jsx)("caption", {
476
+ className: "".concat(prefixCls, "-caption"),
477
+ children: caption
478
+ }) : undefined;
479
+ var dataProps = (0, _pickAttrs["default"])(props, {
480
+ data: true
481
+ });
482
+ var ariaProps = (0, _pickAttrs["default"])(props, {
483
+ aria: true
484
+ });
485
+ if (fixHeader || isSticky) {
486
+ // >>>>>> Fixed Header
487
+ var bodyContent;
488
+ if (typeof customizeScrollBody === 'function') {
489
+ bodyContent = customizeScrollBody(mergedData, {
490
+ scrollbarSize: scrollbarSize,
491
+ ref: scrollBodyRef,
492
+ onScroll: onInternalScroll
493
+ });
494
+ headerProps.colWidths = flattenColumns.map(function (_ref5, index) {
495
+ var width = _ref5.width;
496
+ var colWidth = index === flattenColumns.length - 1 ? width - scrollbarSize : width;
497
+ if (typeof colWidth === 'number' && !Number.isNaN(colWidth)) {
498
+ return colWidth;
499
+ }
500
+ if (process.env.NODE_ENV !== 'production') {
501
+ (0, _warning["default"])(props.columns.length === 0, 'When use `components.body` with render props. Each column should have a fixed `width` value.');
502
+ }
503
+ return 0;
504
+ });
505
+ } else {
506
+ bodyContent = (0, _jsxRuntime.jsx)("div", {
507
+ style: Object.assign(Object.assign({}, scrollXStyle), scrollYStyle),
508
+ onScroll: onBodyScroll,
509
+ ref: scrollBodyRef,
510
+ className: "".concat(prefixCls, "-body"),
511
+ children: (0, _jsxRuntime.jsxs)(TableComponent, Object.assign({
512
+ style: Object.assign(Object.assign({}, scrollTableStyle), {
513
+ tableLayout: mergedTableLayout
514
+ })
515
+ }, ariaProps, {
516
+ children: [captionElement, bodyColGroup, bodyTable, !fixFooter && summaryNode && (0, _jsxRuntime.jsx)(_Footer["default"], {
517
+ stickyOffsets: stickyOffsets,
518
+ flattenColumns: flattenColumns,
519
+ children: summaryNode
520
+ })]
521
+ }))
522
+ });
523
+ }
524
+ // Fixed holder share the props
525
+ var fixedHolderProps = Object.assign(Object.assign(Object.assign({
526
+ noData: !mergedData.length,
527
+ maxContentScroll: horizonScroll && mergedScrollX === 'max-content'
528
+ }, headerProps), columnContext), {
529
+ direction: direction,
530
+ stickyClassName: stickyClassName,
531
+ scrollX: mergedScrollX,
532
+ tableLayout: mergedTableLayout,
533
+ onScroll: onInternalScroll
534
+ });
535
+ groupTableNode = (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
536
+ children: [showHeader !== false && (0, _jsxRuntime.jsx)(_FixedHolder["default"], Object.assign({}, fixedHolderProps, {
537
+ stickyTopOffset: offsetHeader,
538
+ className: "".concat(prefixCls, "-header"),
539
+ ref: scrollHeaderRef,
540
+ colGroup: bodyColGroup,
541
+ children: renderFixedHeaderTable
542
+ })), bodyContent, fixFooter && fixFooter !== 'top' && (0, _jsxRuntime.jsx)(_FixedHolder["default"], Object.assign({}, fixedHolderProps, {
543
+ stickyBottomOffset: offsetSummary,
544
+ className: "".concat(prefixCls, "-summary"),
545
+ ref: scrollSummaryRef,
546
+ colGroup: bodyColGroup,
547
+ children: renderFixedFooterTable
548
+ })), isSticky && scrollBodyRef.current && scrollBodyRef.current instanceof Element && (0, _jsxRuntime.jsx)(_stickyScrollBar["default"], {
549
+ ref: stickyRef,
550
+ offsetScroll: offsetScroll,
551
+ scrollBodyRef: scrollBodyRef,
552
+ onScroll: onInternalScroll,
553
+ container: container,
554
+ direction: direction
555
+ })]
556
+ });
557
+ } else {
558
+ // >>>>>> Unique table
559
+ groupTableNode = (0, _jsxRuntime.jsx)("div", {
560
+ style: Object.assign(Object.assign(Object.assign({}, scrollXStyle), scrollYStyle), styles === null || styles === void 0 ? void 0 : styles.content),
561
+ className: (0, _clsx2.clsx)("".concat(prefixCls, "-content"), classNames === null || classNames === void 0 ? void 0 : classNames.content),
562
+ onScroll: onInternalScroll,
563
+ ref: scrollBodyRef,
564
+ children: (0, _jsxRuntime.jsxs)(TableComponent, Object.assign({
565
+ style: Object.assign(Object.assign({}, scrollTableStyle), {
566
+ tableLayout: mergedTableLayout
567
+ })
568
+ }, ariaProps, {
569
+ children: [captionElement, bodyColGroup, showHeader !== false && (0, _jsxRuntime.jsx)(_Header["default"], Object.assign({}, headerProps, columnContext)), bodyTable, summaryNode && (0, _jsxRuntime.jsx)(_Footer["default"], {
570
+ stickyOffsets: stickyOffsets,
571
+ flattenColumns: flattenColumns,
572
+ children: summaryNode
573
+ })]
574
+ }))
575
+ });
576
+ }
577
+ var tableStyle = Object.assign({}, style);
578
+ // Add css var for sticky header `zIndex` calc
579
+ if (isSticky) {
580
+ tableStyle['--columns-count'] = flattenColumns.length;
581
+ }
582
+ var fullTable = (0, _jsxRuntime.jsxs)("div", Object.assign({
583
+ className: (0, _clsx2.clsx)(prefixCls, className, (_clsx = {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_clsx, "".concat(prefixCls, "-rtl"), direction === 'rtl'), "".concat(prefixCls, "-fix-start-shadow"), horizonScroll), "".concat(prefixCls, "-fix-end-shadow"), horizonScroll), "".concat(prefixCls, "-fix-start-shadow-show"), horizonScroll && shadowStart), "".concat(prefixCls, "-fix-end-shadow-show"), horizonScroll && shadowEnd), "".concat(prefixCls, "-layout-fixed"), tableLayout === 'fixed'), "".concat(prefixCls, "-fixed-header"), fixHeader), "".concat(prefixCls, "-fixed-column"), fixColumn), "".concat(prefixCls, "-scroll-horizontal"), horizonScroll), "".concat(prefixCls, "-has-fix-start"), (_a = flattenColumns[0]) === null || _a === void 0 ? void 0 : _a.fixed), (0, _defineProperty2["default"])(_clsx, "".concat(prefixCls, "-has-fix-end"), ((_b = flattenColumns[flattenColumns.length - 1]) === null || _b === void 0 ? void 0 : _b.fixed) === 'end'))),
584
+ style: tableStyle,
585
+ id: id,
586
+ ref: fullTableRef
587
+ }, dataProps, {
588
+ children: [title && (0, _jsxRuntime.jsx)(_Panel["default"], {
589
+ className: (0, _clsx2.clsx)("".concat(prefixCls, "-title"), classNames === null || classNames === void 0 ? void 0 : classNames.title),
590
+ style: styles === null || styles === void 0 ? void 0 : styles.title,
591
+ children: title(mergedData)
592
+ }), (0, _jsxRuntime.jsx)("div", {
593
+ ref: scrollBodyContainerRef,
594
+ className: (0, _clsx2.clsx)("".concat(prefixCls, "-container"), classNames === null || classNames === void 0 ? void 0 : classNames.section),
595
+ style: styles === null || styles === void 0 ? void 0 : styles.section,
596
+ children: groupTableNode
597
+ }), footer && (0, _jsxRuntime.jsx)(_Panel["default"], {
598
+ className: (0, _clsx2.clsx)("".concat(prefixCls, "-footer"), classNames === null || classNames === void 0 ? void 0 : classNames.footer),
599
+ style: styles === null || styles === void 0 ? void 0 : styles.footer,
600
+ children: footer(mergedData)
601
+ })]
602
+ }));
603
+ if (horizonScroll) {
604
+ fullTable = (0, _jsxRuntime.jsx)(_ResizeObserver["default"], {
605
+ onResize: function onResize(_ref6) {
606
+ var offsetWidth = _ref6.offsetWidth;
607
+ return onFullTableResize(offsetWidth);
608
+ },
609
+ children: fullTable
610
+ });
611
+ }
612
+ var fixedInfoList = (0, _useFixedInfo["default"])(flattenColumns, stickyOffsets);
613
+ var TableContextValue = React.useMemo(function () {
614
+ return {
615
+ // Scroll
616
+ scrollX: mergedScrollX,
617
+ scrollInfo: scrollInfo,
618
+ classNames: classNames,
619
+ styles: styles,
620
+ // Table
621
+ prefixCls: prefixCls,
622
+ getComponent: getComponent,
623
+ scrollbarSize: scrollbarSize,
624
+ direction: direction,
625
+ fixedInfoList: fixedInfoList,
626
+ isSticky: isSticky,
627
+ componentWidth: componentWidth,
628
+ fixHeader: fixHeader,
629
+ fixColumn: fixColumn,
630
+ horizonScroll: horizonScroll,
631
+ // Body
632
+ tableLayout: mergedTableLayout,
633
+ rowClassName: rowClassName,
634
+ expandedRowClassName: expandableConfig.expandedRowClassName,
635
+ expandIcon: mergedExpandIcon,
636
+ expandableType: expandableType,
637
+ expandRowByClick: expandableConfig.expandRowByClick,
638
+ expandedRowRender: expandableConfig.expandedRowRender,
639
+ expandedRowOffset: expandableConfig.expandedRowOffset,
640
+ onTriggerExpand: onTriggerExpand,
641
+ expandIconColumnIndex: expandableConfig.expandIconColumnIndex,
642
+ indentSize: expandableConfig.indentSize,
643
+ allColumnsFixedLeft: flattenColumns.every(function (col) {
644
+ return col.fixed === 'start';
645
+ }),
646
+ emptyNode: emptyNode,
647
+ // Column
648
+ columns: columns,
649
+ flattenColumns: flattenColumns,
650
+ onColumnResize: onColumnResize,
651
+ colWidths: colWidths,
652
+ // Row
653
+ hoverStartRow: startRow,
654
+ hoverEndRow: endRow,
655
+ onHover: onHover,
656
+ rowExpandable: expandableConfig.rowExpandable,
657
+ onRow: onRow,
658
+ getRowKey: getRowKey,
659
+ expandedKeys: mergedExpandedKeys,
660
+ childrenColumnName: mergedChildrenColumnName,
661
+ rowHoverable: rowHoverable,
662
+ // Measure Row
663
+ measureRowRender: measureRowRender
664
+ };
665
+ }, [
666
+ // Scroll
667
+ mergedScrollX, scrollInfo, classNames, styles,
668
+ // Table
669
+ prefixCls, getComponent, scrollbarSize, direction, fixedInfoList, isSticky, componentWidth, fixHeader, fixColumn, horizonScroll,
670
+ // Body
671
+ mergedTableLayout, rowClassName, expandableConfig.expandedRowClassName, mergedExpandIcon, expandableType, expandableConfig.expandRowByClick, expandableConfig.expandedRowRender, expandableConfig.expandedRowOffset, onTriggerExpand, expandableConfig.expandIconColumnIndex, expandableConfig.indentSize, emptyNode,
672
+ // Column
673
+ columns, flattenColumns, onColumnResize, colWidths,
674
+ // Row
675
+ startRow, endRow, onHover, expandableConfig.rowExpandable, onRow, getRowKey, mergedExpandedKeys, mergedChildrenColumnName, rowHoverable, measureRowRender]);
676
+ return (0, _jsxRuntime.jsx)(_TableContext["default"].Provider, {
677
+ value: TableContextValue,
678
+ children: fullTable
679
+ });
680
+ };
681
+ var RefTable = /*#__PURE__*/React.forwardRef(Table);
682
+ if (process.env.NODE_ENV !== 'production') {
683
+ RefTable.displayName = 'Table';
684
+ }
685
+ var genTable = exports.genTable = function genTable(shouldTriggerRender) {
686
+ return (0, _TableContext.makeImmutable)(RefTable, shouldTriggerRender);
687
+ };
688
+ var ImmutableTable = genTable();
689
+ ImmutableTable.EXPAND_COLUMN = _constant.EXPAND_COLUMN;
690
+ ImmutableTable.INTERNAL_HOOKS = _constant.INTERNAL_HOOKS;
691
+ ImmutableTable.Column = _Column["default"];
692
+ ImmutableTable.ColumnGroup = _ColumnGroup["default"];
693
+ ImmutableTable.Summary = _Footer.FooterComponents;
694
+ var _default = exports["default"] = ImmutableTable;
695
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVGFibGUvaW50ZXJuYWwva2VybmVsL1RhYmxlLmpzIiwiY29tcG9uZW50cy9UYWJsZS9pbnRlcm5hbC9zcmMvY29tcG9uZW50cy9UYWJsZS9pbnRlcm5hbC9rZXJuZWwvVGFibGUudHN4Il0sIm5hbWVzIjpbIl9qc3hSdW50aW1lIiwicmVxdWlyZSIsIl9jbHN4MiIsIl9SZXNpemVPYnNlcnZlciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfZ2V0U2Nyb2xsQmFyU2l6ZSIsIl9ob29rcyIsIl9waWNrQXR0cnMiLCJfZ2V0IiwiX3dhcm5pbmciLCJSZWFjdCIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX0JvZHkiLCJfQ29sR3JvdXAiLCJfY29uc3RhbnQiLCJfVGFibGVDb250ZXh0IiwiX0ZpeGVkSG9sZGVyIiwiX0Zvb3RlciIsIl9TdW1tYXJ5IiwiX0hlYWRlciIsIl91c2VDb2x1bW5zMyIsIl91c2VFeHBhbmQzIiwiX3VzZUZpeGVkSW5mbyIsIl91c2VGcmFtZSIsIl91c2VIb3ZlcjMiLCJfdXNlU3RpY2t5MiIsIl91c2VTdGlja3lPZmZzZXRzIiwiX1BhbmVsIiwiX3N0aWNreVNjcm9sbEJhciIsIl9Db2x1bW4iLCJfQ29sdW1uR3JvdXAiLCJfdmFsdWVVdGlsIiwiX3JlYWN0VXRpbCIsIl9pc0VxdWFsIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiREVGQVVMVF9QUkVGSVgiLCJleHBvcnRzIiwiRU1QVFlfREFUQSIsIkVNUFRZX1NDUk9MTF9UQVJHRVQiLCJkZWZhdWx0RW1wdHkiLCJUYWJsZSIsInRhYmxlUHJvcHMiLCJyZWYiLCJfY2xzeCIsIl9hIiwiX2IiLCJwcm9wcyIsImFzc2lnbiIsInJvd0tleSIsInByZWZpeENscyIsImVtcHR5VGV4dCIsImNsYXNzTmFtZSIsInJvd0NsYXNzTmFtZSIsInN0eWxlIiwiY2xhc3NOYW1lcyIsInN0eWxlcyIsImRhdGEiLCJzY3JvbGwiLCJ0YWJsZUxheW91dCIsImRpcmVjdGlvbiIsInRpdGxlIiwiZm9vdGVyIiwic3VtbWFyeSIsImNhcHRpb24iLCJpZCIsInNob3dIZWFkZXIiLCJjb21wb25lbnRzIiwib25Sb3ciLCJvbkhlYWRlclJvdyIsIm1lYXN1cmVSb3dSZW5kZXIiLCJvblNjcm9sbCIsImludGVybmFsSG9va3MiLCJ0cmFuc2Zvcm1Db2x1bW5zIiwiaW50ZXJuYWxSZWZzIiwidGFpbG9yIiwiZ2V0Q29udGFpbmVyV2lkdGgiLCJzdGlja3kiLCJfcHJvcHMkcm93SG92ZXJhYmxlIiwicm93SG92ZXJhYmxlIiwibWVyZ2VkRGF0YSIsImhhc0RhdGEiLCJsZW5ndGgiLCJ1c2VJbnRlcm5hbEhvb2tzIiwiSU5URVJOQUxfSE9PS1MiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJmb3JFYWNoIiwibmFtZSIsIndhcm5pbmciLCJ1bmRlZmluZWQiLCJjb25jYXQiLCJnZXRDb21wb25lbnQiLCJ1c2VDYWxsYmFjayIsInBhdGgiLCJkZWZhdWx0Q29tcG9uZW50IiwiZ2V0VmFsdWUiLCJnZXRSb3dLZXkiLCJ1c2VNZW1vIiwicmVjb3JkIiwia2V5IiwiY3VzdG9taXplU2Nyb2xsQm9keSIsIl91c2VIb3ZlciIsInVzZUhvdmVyIiwiX3VzZUhvdmVyMiIsIl9zbGljZWRUb0FycmF5MiIsInN0YXJ0Um93IiwiZW5kUm93Iiwib25Ib3ZlciIsIl91c2VFeHBhbmQiLCJ1c2VFeHBhbmQiLCJfdXNlRXhwYW5kMiIsImV4cGFuZGFibGVDb25maWciLCJleHBhbmRhYmxlVHlwZSIsIm1lcmdlZEV4cGFuZGVkS2V5cyIsIm1lcmdlZEV4cGFuZEljb24iLCJtZXJnZWRDaGlsZHJlbkNvbHVtbk5hbWUiLCJvblRyaWdnZXJFeHBhbmQiLCJzY3JvbGxYIiwieCIsIl9SZWFjdCR1c2VTdGF0ZSIsInVzZVN0YXRlIiwiX1JlYWN0JHVzZVN0YXRlMiIsImNvbXBvbmVudFdpZHRoIiwic2V0Q29tcG9uZW50V2lkdGgiLCJfdXNlQ29sdW1ucyIsInVzZUNvbHVtbnMiLCJleHBhbmRhYmxlIiwiZXhwYW5kZWRSb3dSZW5kZXIiLCJjb2x1bW5UaXRsZSIsImV4cGFuZGVkS2V5cyIsImV4cGFuZEljb24iLCJleHBhbmRJY29uQ29sdW1uSW5kZXgiLCJzY3JvbGxXaWR0aCIsImNsaWVudFdpZHRoIiwiX3VzZUNvbHVtbnMyIiwiY29sdW1ucyIsImZsYXR0ZW5Db2x1bW5zIiwiZmxhdHRlblNjcm9sbFgiLCJtZXJnZWRTY3JvbGxYIiwiY29sdW1uQ29udGV4dCIsImZ1bGxUYWJsZVJlZiIsInVzZVJlZiIsInNjcm9sbEhlYWRlclJlZiIsInNjcm9sbEJvZHlSZWYiLCJzY3JvbGxCb2R5Q29udGFpbmVyUmVmIiwidXNlSW1wZXJhdGl2ZUhhbmRsZSIsIm5hdGl2ZUVsZW1lbnQiLCJjdXJyZW50Iiwic2Nyb2xsVG8iLCJjb25maWciLCJIVE1MRWxlbWVudCIsImluZGV4IiwidG9wIiwib2Zmc2V0IiwidmFsaWROdW1iZXJWYWx1ZSIsIm1lcmdlZEtleSIsInRhcmdldEVsZW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwic2Nyb2xsSW50b1ZpZXciLCJlbGVtZW50VG9wIiwib2Zmc2V0VG9wIiwic2Nyb2xsU3VtbWFyeVJlZiIsIl9SZWFjdCR1c2VTdGF0ZTMiLCJfUmVhY3QkdXNlU3RhdGU0Iiwic2hhZG93U3RhcnQiLCJzZXRTaGFkb3dTdGFydCIsIl9SZWFjdCR1c2VTdGF0ZTUiLCJfUmVhY3QkdXNlU3RhdGU2Iiwic2hhZG93RW5kIiwic2V0U2hhZG93RW5kIiwiX1JlYWN0JHVzZVN0YXRlNyIsIk1hcCIsIl9SZWFjdCR1c2VTdGF0ZTgiLCJjb2xzV2lkdGhzIiwidXBkYXRlQ29sc1dpZHRocyIsImNvbHNLZXlzIiwiZ2V0Q29sdW1uc0tleSIsInB1cmVDb2xXaWR0aHMiLCJtYXAiLCJjb2x1bW5LZXkiLCJjb2xXaWR0aHMiLCJqb2luIiwic3RpY2t5T2Zmc2V0cyIsInVzZVN0aWNreU9mZnNldHMiLCJmaXhIZWFkZXIiLCJ2YWxpZGF0ZVZhbHVlIiwieSIsImhvcml6b25TY3JvbGwiLCJCb29sZWFuIiwiZml4ZWQiLCJmaXhDb2x1bW4iLCJzb21lIiwiX3JlZiIsInN0aWNreVJlZiIsIl91c2VTdGlja3kiLCJ1c2VTdGlja3kiLCJpc1N0aWNreSIsIm9mZnNldEhlYWRlciIsIm9mZnNldFN1bW1hcnkiLCJvZmZzZXRTY3JvbGwiLCJzdGlja3lDbGFzc05hbWUiLCJjb250YWluZXIiLCJzdW1tYXJ5Tm9kZSIsImZpeEZvb3RlciIsImlzVmFsaWRFbGVtZW50IiwidHlwZSIsIlN1bW1hcnkiLCJzY3JvbGxYU3R5bGUiLCJzY3JvbGxZU3R5bGUiLCJzY3JvbGxUYWJsZVN0eWxlIiwib3ZlcmZsb3dZIiwibWF4SGVpZ2h0Iiwib3ZlcmZsb3dYIiwid2lkdGgiLCJtaW5XaWR0aCIsIm9uQ29sdW1uUmVzaXplIiwid2lkdGhzIiwibmV3V2lkdGhzIiwiX3VzZVRpbWVvdXRMb2NrIiwidXNlVGltZW91dExvY2siLCJfdXNlVGltZW91dExvY2syIiwic2V0U2Nyb2xsVGFyZ2V0IiwiZ2V0U2Nyb2xsVGFyZ2V0IiwiZm9yY2VTY3JvbGwiLCJzY3JvbGxMZWZ0IiwidGFyZ2V0Iiwic2V0VGltZW91dCIsIl9SZWFjdCR1c2VTdGF0ZTkiLCJfUmVhY3QkdXNlU3RhdGUxMCIsInNjcm9sbEluZm8iLCJzZXRTY3JvbGxJbmZvIiwib25JbnRlcm5hbFNjcm9sbCIsInVzZUV2ZW50IiwiX3JlZjIiLCJjdXJyZW50VGFyZ2V0IiwibWVyZ2VkU2Nyb2xsTGVmdCIsImNvbXBhcmVUYXJnZXQiLCJzZXRTY3JvbGxMZWZ0IiwibWVhc3VyZVRhcmdldCIsImFic1Njcm9sbFN0YXJ0IiwiTWF0aCIsImFicyIsIm9yaSIsIm5leHRTY3JvbGxJbmZvIiwiaXNFcXVhbCIsIm9uQm9keVNjcm9sbCIsInRyaWdnZXJPblNjcm9sbCIsImdldERPTSIsIm9uRnVsbFRhYmxlUmVzaXplIiwib2Zmc2V0V2lkdGgiLCJfYyIsImNoZWNrU2Nyb2xsQmFyVmlzaWJsZSIsIm1lcmdlZFdpZHRoIiwidXNlTGF5b3V0RWZmZWN0IiwibW91bnRlZCIsInVzZUVmZmVjdCIsIl9SZWFjdCR1c2VTdGF0ZTExIiwiX1JlYWN0JHVzZVN0YXRlMTIiLCJzY3JvbGxiYXJTaXplIiwic2V0U2Nyb2xsYmFyU2l6ZSIsIkVsZW1lbnQiLCJnZXRUYXJnZXRTY3JvbGxCYXJTaXplIiwiYm9keSIsInJlbmRlckZpeGVkSGVhZGVyVGFibGUiLCJmaXhlZEhvbGRlclBhc3NQcm9wcyIsIl9qc3hzIiwiX0ZyYWdtZW50IiwiY2hpbGRyZW4iLCJfanN4IiwiSGVhZGVyIiwiRm9vdGVyIiwicmVuZGVyRml4ZWRGb290ZXJUYWJsZSIsIlRhYmxlQ29tcG9uZW50IiwibWVyZ2VkVGFibGVMYXlvdXQiLCJfcmVmMyIsImVsbGlwc2lzIiwiZ3JvdXBUYWJsZU5vZGUiLCJoZWFkZXJQcm9wcyIsImNvbHVtQ291bnQiLCJlbXB0eU5vZGUiLCJib2R5VGFibGUiLCJCb2R5IiwibWVhc3VyZUNvbHVtbldpZHRoIiwiYm9keUNvbEdyb3VwIiwiQ29sR3JvdXAiLCJfcmVmNCIsImNhcHRpb25FbGVtZW50IiwiZGF0YVByb3BzIiwicGlja0F0dHJzIiwiYXJpYVByb3BzIiwiYXJpYSIsImJvZHlDb250ZW50IiwiX3JlZjUiLCJjb2xXaWR0aCIsIk51bWJlciIsImlzTmFOIiwiZml4ZWRIb2xkZXJQcm9wcyIsIm5vRGF0YSIsIm1heENvbnRlbnRTY3JvbGwiLCJGaXhlZEhvbGRlciIsInN0aWNreVRvcE9mZnNldCIsImNvbEdyb3VwIiwic3RpY2t5Qm90dG9tT2Zmc2V0IiwiU3RpY2t5U2Nyb2xsQmFyIiwiY29udGVudCIsImNsc3giLCJ0YWJsZVN0eWxlIiwiZnVsbFRhYmxlIiwiX2RlZmluZVByb3BlcnR5MiIsIlBhbmVsIiwic2VjdGlvbiIsIlJlc2l6ZU9ic2VydmVyIiwib25SZXNpemUiLCJfcmVmNiIsImZpeGVkSW5mb0xpc3QiLCJ1c2VGaXhlZEluZm8iLCJUYWJsZUNvbnRleHRWYWx1ZSIsImV4cGFuZGVkUm93Q2xhc3NOYW1lIiwiZXhwYW5kUm93QnlDbGljayIsImV4cGFuZGVkUm93T2Zmc2V0IiwiaW5kZW50U2l6ZSIsImFsbENvbHVtbnNGaXhlZExlZnQiLCJldmVyeSIsImNvbCIsImhvdmVyU3RhcnRSb3ciLCJob3ZlckVuZFJvdyIsInJvd0V4cGFuZGFibGUiLCJjaGlsZHJlbkNvbHVtbk5hbWUiLCJUYWJsZUNvbnRleHQiLCJQcm92aWRlciIsInZhbHVlIiwiUmVmVGFibGUiLCJmb3J3YXJkUmVmIiwiZGlzcGxheU5hbWUiLCJnZW5UYWJsZSIsInNob3VsZFRyaWdnZXJSZW5kZXIiLCJtYWtlSW1tdXRhYmxlIiwiSW1tdXRhYmxlVGFibGUiLCJFWFBBTkRfQ09MVU1OIiwiQ29sdW1uIiwiQ29sdW1uR3JvdXAiLCJGb290ZXJDb21wb25lbnRzIiwiX2RlZmF1bHQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUM0QkEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsZUFBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksaUJBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLE1BQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFVBQUEsR0FBQUgsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFPLElBQUEsR0FBQUosc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFRLFFBQUEsR0FBQUwsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFTLEtBQUEsR0FBQUMsdUJBQUEsQ0FBQVYsT0FBQTtBQUNBLElBQUFXLEtBQUEsR0FBQVIsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFZLFNBQUEsR0FBQVQsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFhLFNBQUEsR0FBQWIsT0FBQTtBQUNBLElBQUFjLGFBQUEsR0FBQUosdUJBQUEsQ0FBQVYsT0FBQTtBQUVBLElBQUFlLFlBQUEsR0FBQVosc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFnQixPQUFBLEdBQUFOLHVCQUFBLENBQUFWLE9BQUE7QUFFQSxJQUFBaUIsUUFBQSxHQUFBZCxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQWtCLE9BQUEsR0FBQWYsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFtQixZQUFBLEdBQUFoQixzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQW9CLFdBQUEsR0FBQWpCLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBcUIsYUFBQSxHQUFBbEIsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFzQixTQUFBLEdBQUF0QixPQUFBO0FBQ0EsSUFBQXVCLFVBQUEsR0FBQXBCLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBd0IsV0FBQSxHQUFBckIsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUF5QixpQkFBQSxHQUFBdEIsc0JBQUEsQ0FBQUgsT0FBQTtBQW1CQSxJQUFBMEIsTUFBQSxHQUFBdkIsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUEyQixnQkFBQSxHQUFBeEIsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUE0QixPQUFBLEdBQUF6QixzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQTZCLFlBQUEsR0FBQTFCLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBOEIsVUFBQSxHQUFBOUIsT0FBQTtBQUNBLElBQUErQixVQUFBLEdBQUEvQixPQUFBO0FBQ0EsSUFBQWdDLFFBQUEsR0FBQTdCLHNCQUFBLENBQUFILE9BQUE7QUFBaUQsU0FBQWlDLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBeEIsd0JBQUF3QixDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUksVUFBQSxTQUFBSixDQUFBLGVBQUFBLENBQUEsZ0JBQUFLLE9BQUEsQ0FBQUwsQ0FBQSwwQkFBQUEsQ0FBQSxzQkFBQUEsQ0FBQSxRQUFBRyxDQUFBLEdBQUFKLHdCQUFBLENBQUFHLENBQUEsT0FBQUMsQ0FBQSxJQUFBQSxDQUFBLENBQUFHLEdBQUEsQ0FBQU4sQ0FBQSxVQUFBRyxDQUFBLENBQUFJLEdBQUEsQ0FBQVAsQ0FBQSxPQUFBUSxDQUFBLEtBQUFDLFNBQUEsVUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxDQUFBLElBQUFkLENBQUEsb0JBQUFjLENBQUEsT0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFoQixDQUFBLEVBQUFjLENBQUEsU0FBQUcsQ0FBQSxHQUFBUCxDQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQWIsQ0FBQSxFQUFBYyxDQUFBLFVBQUFHLENBQUEsS0FBQUEsQ0FBQSxDQUFBVixHQUFBLElBQUFVLENBQUEsQ0FBQUMsR0FBQSxJQUFBUCxNQUFBLENBQUFDLGNBQUEsQ0FBQUosQ0FBQSxFQUFBTSxDQUFBLEVBQUFHLENBQUEsSUFBQVQsQ0FBQSxDQUFBTSxDQUFBLElBQUFkLENBQUEsQ0FBQWMsQ0FBQSxZQUFBTixDQUFBLGNBQUFSLENBQUEsRUFBQUcsQ0FBQSxJQUFBQSxDQUFBLENBQUFlLEdBQUEsQ0FBQWxCLENBQUEsRUFBQVEsQ0FBQSxHQUFBQSxDQUFBO0FBRzFDLElBQU1XLGNBQWMsR0FBQUMsT0FBQSxDQUFBRCxjQUFBLEdBQUcsVUFBVTtBQUV4QztBQUNBLElBQU1FLFVBQVUsR0FBRyxFQUFFO0FBRXJCO0FBQ0EsSUFBTUMsbUJBQW1CLEdBQUcsQ0FBQSxDQUFFO0FBd0c5QixTQUFTQyxZQUFZQSxDQUFBLEVBQUE7RUFDbkIsT0FBTyxTQUFTO0FBQ2xCO0FBRUEsSUFBTUMsS0FBSyxHQUFHLFNBQVJBLEtBQUtBLENBQ1RDLFVBQWtDLEVBQ2xDQyxHQUF5QixFQUN2QjtFQUFBLElBQUFDLEtBQUE7RUQ1SkEsSUFBSUMsRUFBRSxFQUFFQyxFQUFFO0VDNkpaLElBQU1DLEtBQUssR0FBQW5CLE1BQUEsQ0FBQW9CLE1BQUEsQ0FBQTtJQUNUQyxNQUFNLEVBQUUsS0FBSztJQUNiQyxTQUFTLEVBQUVkLGNBQWM7SUFDekJlLFNBQVMsRUFBRVg7RUFBWSxDQUFBLEVBQ3BCRSxVQUFVLENBQ2Q7RUFFRCxJQUNFUSxTQUFTLEdBeUNQSCxLQUFLLENBekNQRyxTQUFTO0lBQ1RFLFNBQVMsR0F3Q1BMLEtBQUssQ0F4Q1BLLFNBQVM7SUFDVEMsWUFBWSxHQXVDVk4sS0FBSyxDQXZDUE0sWUFBWTtJQUNaQyxLQUFLLEdBc0NIUCxLQUFLLENBdENQTyxLQUFLO0lBQ0xDLFVBQVUsR0FxQ1JSLEtBQUssQ0FyQ1BRLFVBQVU7SUFDVkMsTUFBTSxHQW9DSlQsS0FBSyxDQXBDUFMsTUFBTTtJQUNOQyxJQUFJLEdBbUNGVixLQUFLLENBbkNQVSxJQUFJO0lBQ0pSLE1BQU0sR0FrQ0pGLEtBQUssQ0FsQ1BFLE1BQU07SUFDTlMsTUFBTSxHQWlDSlgsS0FBSyxDQWpDUFcsTUFBTTtJQUNOQyxXQUFXLEdBZ0NUWixLQUFLLENBaENQWSxXQUFXO0lBQ1hDLFNBQVMsR0ErQlBiLEtBQUssQ0EvQlBhLFNBQVM7SUFHVEMsS0FBSyxHQTRCSGQsS0FBSyxDQTVCUGMsS0FBSztJQUNMQyxNQUFNLEdBMkJKZixLQUFLLENBM0JQZSxNQUFNO0lBQ05DLE9BQU8sR0EwQkxoQixLQUFLLENBMUJQZ0IsT0FBTztJQUNQQyxPQUFPLEdBeUJMakIsS0FBSyxDQXpCUGlCLE9BQU87SUFHUEMsRUFBRSxHQXNCQWxCLEtBQUssQ0F0QlBrQixFQUFFO0lBQ0ZDLFVBQVUsR0FxQlJuQixLQUFLLENBckJQbUIsVUFBVTtJQUNWQyxVQUFVLEdBb0JScEIsS0FBSyxDQXBCUG9CLFVBQVU7SUFDVmhCLFNBQVMsR0FtQlBKLEtBQUssQ0FuQlBJLFNBQVM7SUFDVGlCLEtBQUssR0FrQkhyQixLQUFLLENBbEJQcUIsS0FBSztJQUNMQyxXQUFXLEdBaUJUdEIsS0FBSyxDQWpCUHNCLFdBQVc7SUFHWEMsZ0JBQWdCLEdBY2R2QixLQUFLLENBZFB1QixnQkFBZ0I7SUFHaEJDLFFBQVEsR0FXTnhCLEtBQUssQ0FYUHdCLFFBQVE7SUFHUkMsYUFBYSxHQVFYekIsS0FBSyxDQVJQeUIsYUFBYTtJQUNiQyxnQkFBZ0IsR0FPZDFCLEtBQUssQ0FQUDBCLGdCQUFnQjtJQUNoQkMsWUFBWSxHQU1WM0IsS0FBSyxDQU5QMkIsWUFBWTtJQUNaQyxNQUFNLEdBS0o1QixLQUFLLENBTFA0QixNQUFNO0lBQ05DLGlCQUFpQixHQUlmN0IsS0FBSyxDQUpQNkIsaUJBQWlCO0lBRWpCQyxNQUFNLEdBRUo5QixLQUFLLENBRlA4QixNQUFNO0lBQUFDLG1CQUFBLEdBRUovQixLQUFLLENBRFBnQyxZQUFZO0lBQVpBLFlBQVksR0FBQUQsbUJBQUEsY0FBRyxJQUFJLEdBQUFBLG1CQUFBO0VBR3JCLElBQU1FLFVBQVUsR0FBR3ZCLElBQUksSUFBSW5CLFVBQVU7RUFDckMsSUFBTTJDLE9BQU8sR0FBRyxDQUFDLENBQUNELFVBQVUsQ0FBQ0UsTUFBTTtFQUVuQyxJQUFNQyxnQkFBZ0IsR0FBR1gsYUFBYSxLQUFLWSx3QkFBYztFQUV6RDtFQUNBLElBQUlDLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDQyxRQUFRLEtBQUssWUFBWSxFQUFFO0lBQ3pDLENBQ0UsWUFBWSxFQUNaLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLGlCQUFpQixDQUNsQixDQUFDQyxPQUFPLENBQUMsVUFBQUMsSUFBSSxFQUFHO01BQ2YsSUFBQUMsbUJBQU8sRUFBQzNDLEtBQUssQ0FBQzBDLElBQUksQ0FBQyxLQUFLRSxTQUFTLE1BQUFDLE1BQUEsQ0FBT0gsSUFBSSw4Q0FBOEMsQ0FBQztJQUM3RixDQUFDLENBQUM7SUFFRixJQUFBQyxtQkFBTyxFQUNMLEVBQUUsZ0JBQWdCLElBQUkzQyxLQUFLLENBQUMsRUFDNUIseUVBQXlFLENBQzFFO0VBQ0g7RUFFQTtFQUNBLElBQU04QyxZQUFZLEdBQUdyRyxLQUFLLENBQUNzRyxXQUFXLENBQ3BDLFVBQUNDLElBQUksRUFBRUMsZ0JBQWdCO0lBQUEsT0FBSyxJQUFBQyxlQUFRLEVBQUM5QixVQUFVLEVBQUU0QixJQUFJLENBQUMsSUFBSUMsZ0JBQWdCO0VBQUEsR0FDMUUsQ0FBQzdCLFVBQVUsQ0FBQyxDQUNiO0VBRUQsSUFBTStCLFNBQVMsR0FBRzFHLEtBQUssQ0FBQzJHLE9BQU8sQ0FBd0IsWUFBSztJQUMxRCxJQUFJLE9BQU9sRCxNQUFNLEtBQUssVUFBVSxFQUFFO01BQ2hDLE9BQU9BLE1BQU07SUFDZjtJQUNBLE9BQU8sVUFBQ21ELE1BQWtCLEVBQUk7TUFDNUIsSUFBTUMsR0FBRyxHQUFHRCxNQUFNLElBQUlBLE1BQU0sQ0FBQ25ELE1BQU0sQ0FBQztNQUVwQyxJQUFJb0MsT0FBTyxDQUFDQyxHQUFHLENBQUNDLFFBQVEsS0FBSyxZQUFZLEVBQUU7UUFDekMsSUFBQUcsbUJBQU8sRUFDTFcsR0FBRyxLQUFLVixTQUFTLEVBQ2pCLGlHQUFpRyxDQUNsRztNQUNIO01BRUEsT0FBT1UsR0FBRztJQUNaLENBQUM7RUFDSCxDQUFDLEVBQUUsQ0FBQ3BELE1BQU0sQ0FBQyxDQUFDO0VBRVosSUFBTXFELG1CQUFtQixHQUFHVCxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBb0M7RUFFckY7RUFDQSxJQUFBVSxTQUFBLEdBQW9DLElBQUFDLHFCQUFRLEVBQUEsQ0FBRTtJQUFBQyxVQUFBLE9BQUFDLGVBQUEsYUFBQUgsU0FBQTtJQUF2Q0ksUUFBUSxHQUFBRixVQUFBO0lBQUVHLE1BQU0sR0FBQUgsVUFBQTtJQUFFSSxPQUFPLEdBQUFKLFVBQUE7RUFFaEM7RUFDQSxJQUFBSyxVQUFBLEdBT0ksSUFBQUMsc0JBQVMsRUFBQ2hFLEtBQUssRUFBRWlDLFVBQVUsRUFBRWtCLFNBQVMsQ0FBQztJQUFBYyxXQUFBLE9BQUFOLGVBQUEsYUFBQUksVUFBQTtJQU56Q0csZ0JBQWdCLEdBQUFELFdBQUE7SUFDaEJFLGNBQWMsR0FBQUYsV0FBQTtJQUNkRyxrQkFBa0IsR0FBQUgsV0FBQTtJQUNsQkksZ0JBQWdCLEdBQUFKLFdBQUE7SUFDaEJLLHdCQUF3QixHQUFBTCxXQUFBO0lBQ3hCTSxlQUFlLEdBQUFOLFdBQUE7RUFHakI7RUFDQSxJQUFNTyxPQUFPLEdBQUc3RCxNQUFNLEtBQUEsSUFBQSxJQUFOQSxNQUFNLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQU5BLE1BQU0sQ0FBRThELENBQUM7RUFDekIsSUFBQUMsZUFBQSxHQUE0Q2pJLEtBQUssQ0FBQ2tJLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFBQUMsZ0JBQUEsT0FBQWpCLGVBQUEsYUFBQWUsZUFBQTtJQUF0REcsY0FBYyxHQUFBRCxnQkFBQTtJQUFFRSxpQkFBaUIsR0FBQUYsZ0JBQUE7RUFFeEMsSUFBQUcsV0FBQSxHQUFrRCxJQUFBQyx1QkFBVSxFQUFBbkcsTUFBQSxDQUFBb0IsTUFBQSxDQUFBcEIsTUFBQSxDQUFBb0IsTUFBQSxDQUFBcEIsTUFBQSxDQUFBb0IsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUVyREQsS0FBSyxDQUFBLEVBQ0xrRSxnQkFBZ0IsQ0FBQSxFQUFBO01BQ25CZSxVQUFVLEVBQUUsQ0FBQyxDQUFDZixnQkFBZ0IsQ0FBQ2dCLGlCQUFpQjtNQUNoREMsV0FBVyxFQUFFakIsZ0JBQWdCLENBQUNpQixXQUFXO01BQ3pDQyxZQUFZLEVBQUVoQixrQkFBa0I7TUFDaENqQixTQUFTLEVBQVRBLFNBQVM7TUFFVG9CLGVBQWUsRUFBZkEsZUFBZTtNQUNmYyxVQUFVLEVBQUVoQixnQkFBZ0I7TUFDNUJpQixxQkFBcUIsRUFBRXBCLGdCQUFnQixDQUFDb0IscUJBQXFCO01BQzdEekUsU0FBUyxFQUFUQSxTQUFTO01BQ1QwRSxXQUFXLEVBQUVuRCxnQkFBZ0IsSUFBSVIsTUFBTSxJQUFJLE9BQU80QyxPQUFPLEtBQUssUUFBUSxHQUFHQSxPQUFPLEdBQUcsSUFBSTtNQUN2RmdCLFdBQVcsRUFBRVg7SUFBYyxDQUFBLENBQUEsRUFFN0J6QyxnQkFBZ0IsR0FBR1YsZ0JBQWdCLEdBQUcsSUFBSSxDQUMzQztJQUFBK0QsWUFBQSxPQUFBOUIsZUFBQSxhQUFBb0IsV0FBQTtJQWpCTVcsT0FBTyxHQUFBRCxZQUFBO0lBQUVFLGNBQWMsR0FBQUYsWUFBQTtJQUFFRyxjQUFjLEdBQUFILFlBQUE7RUFrQjlDLElBQU1JLGFBQWEsR0FBR0QsY0FBYyxLQUFBLElBQUEsSUFBZEEsY0FBYyxLQUFBLEtBQUEsQ0FBQSxHQUFkQSxjQUFjLEdBQUlwQixPQUFPO0VBRS9DLElBQU1zQixhQUFhLEdBQUdySixLQUFLLENBQUMyRyxPQUFPLENBQ2pDO0lBQUEsT0FBTztNQUFFc0MsT0FBTyxFQUFQQSxPQUFPO01BQUVDLGNBQWMsRUFBZEE7SUFBYyxDQUFFO0VBQUEsQ0FBQyxFQUNuQyxDQUFDRCxPQUFPLEVBQUVDLGNBQWMsQ0FBQyxDQUMxQjtFQUVEO0VBQ0EsSUFBTUksWUFBWSxHQUFHdEosS0FBSyxDQUFDdUosTUFBTSxDQUFpQixJQUFJLENBQUM7RUFDdkQsSUFBTUMsZUFBZSxHQUFHeEosS0FBSyxDQUFDdUosTUFBTSxDQUFpQixJQUFJLENBQUM7RUFDMUQsSUFBTUUsYUFBYSxHQUFHekosS0FBSyxDQUFDdUosTUFBTSxDQUFpQixJQUFJLENBQUM7RUFDeEQsSUFBTUcsc0JBQXNCLEdBQUcxSixLQUFLLENBQUN1SixNQUFNLENBQWlCLElBQUksQ0FBQztFQUVqRXZKLEtBQUssQ0FBQzJKLG1CQUFtQixDQUFDeEcsR0FBRyxFQUFFLFlBQUs7SUFDbEMsT0FBTztNQUNMeUcsYUFBYSxFQUFFTixZQUFZLENBQUNPLE9BQU87TUFDbkNDLFFBQVEsRUFBRSxTQUFWQSxRQUFRQSxDQUFFQyxNQUFNLEVBQUc7UURwUFQsSUFBSTFHLEVBQUUsRUFBRUMsRUFBRTtRQ3FQbEIsSUFBSW1HLGFBQWEsQ0FBQ0ksT0FBTyxZQUFZRyxXQUFXLEVBQUU7VUFDaEQ7VUFDQSxJQUFRQyxLQUFLLEdBQXVCRixNQUFNLENBQWxDRSxLQUFLO1lBQUVDLEdBQUcsR0FBa0JILE1BQU0sQ0FBM0JHLEdBQUc7WUFBRXJELEdBQUcsR0FBYWtELE1BQU0sQ0FBdEJsRCxHQUFHO1lBQUVzRCxNQUFNLEdBQUtKLE1BQU0sQ0FBakJJLE1BQU07VUFFL0IsSUFBSSxJQUFBQywyQkFBZ0IsRUFBQ0YsR0FBRyxDQUFDLEVBQUU7WUFDekI7WUFDQSxDQUFBN0csRUFBQSxHQUFBb0csYUFBYSxDQUFDSSxPQUFPLE1BQUEsSUFBQSxJQUFBeEcsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLENBQUV5RyxRQUFRLENBQUM7Y0FBRUksR0FBRyxFQUFIQTtZQUFHLENBQUUsQ0FBQztVQUMxQyxDQUFDLE1BQU07WUFDTCxJQUFNRyxTQUFTLEdBQUd4RCxHQUFHLEtBQUEsSUFBQSxJQUFIQSxHQUFHLEtBQUEsS0FBQSxDQUFBLEdBQUhBLEdBQUcsR0FBSUgsU0FBUyxDQUFDbEIsVUFBVSxDQUFDeUUsS0FBSyxDQUFDLENBQUM7WUFDckQsSUFBTUssYUFBYSxHQUFHYixhQUFhLENBQUNJLE9BQU8sQ0FBQ1UsYUFBYSxvQkFBQW5FLE1BQUEsQ0FDckNpRSxTQUFTLFFBQUksQ0FDaEM7WUFDRCxJQUFJQyxhQUFhLEVBQUU7Y0FDakIsSUFBSSxDQUFDSCxNQUFNLEVBQUU7Z0JBQ1g7Z0JBQ0FHLGFBQWEsQ0FBQ0UsY0FBYyxDQUFBLENBQUU7Y0FDaEMsQ0FBQyxNQUFNO2dCQUNMO2dCQUNBLElBQU1DLFVBQVUsR0FBSUgsYUFBNkIsQ0FBQ0ksU0FBUztnQkFDM0RqQixhQUFhLENBQUNJLE9BQU8sQ0FBQ0MsUUFBUSxDQUFDO2tCQUFFSSxHQUFHLEVBQUVPLFVBQVUsR0FBR047Z0JBQU0sQ0FBRSxDQUFDO2NBQzlEO1lBQ0Y7VUFDRjtRQUNGLENBQUMsTUFBTSxJQUFJLENBQUE3RyxFQUFBLEdBQUNtRyxhQUFhLENBQUNJLE9BQW9FLE1BQUEsSUFBQSxJQUFBdkcsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLENBQUV3RyxRQUFRLEVBQUU7VUFDeEc7VUFDQ0wsYUFBYSxDQUFDSSxPQUFtRSxDQUFDQyxRQUFRLENBQUNDLE1BQU0sQ0FBQztRQUNyRztNQUNGO0lEblBFLENDb1BIO0VBQ0gsQ0FBQyxDQUFDO0VBRUY7RUFDQSxJQUFNWSxnQkFBZ0IsR0FBRzNLLEtBQUssQ0FBQ3VKLE1BQU0sQ0FBaUIsSUFBSSxDQUFDO0VBQzNELElBQUFxQixnQkFBQSxHQUFzQzVLLEtBQUssQ0FBQ2tJLFFBQVEsQ0FBQyxLQUFLLENBQUM7SUFBQTJDLGdCQUFBLE9BQUEzRCxlQUFBLGFBQUEwRCxnQkFBQTtJQUFwREUsV0FBVyxHQUFBRCxnQkFBQTtJQUFFRSxjQUFjLEdBQUFGLGdCQUFBO0VBQ2xDLElBQUFHLGdCQUFBLEdBQWtDaEwsS0FBSyxDQUFDa0ksUUFBUSxDQUFDLEtBQUssQ0FBQztJQUFBK0MsZ0JBQUEsT0FBQS9ELGVBQUEsYUFBQThELGdCQUFBO0lBQWhERSxTQUFTLEdBQUFELGdCQUFBO0lBQUVFLFlBQVksR0FBQUYsZ0JBQUE7RUFDOUIsSUFBQUcsZ0JBQUEsR0FBdUNwTCxLQUFLLENBQUNrSSxRQUFRLENBQUMsSUFBSW1ELEdBQUcsQ0FBQSxDQUFxQixDQUFDO0lBQUFDLGdCQUFBLE9BQUFwRSxlQUFBLGFBQUFrRSxnQkFBQTtJQUE1RUcsVUFBVSxHQUFBRCxnQkFBQTtJQUFFRSxnQkFBZ0IsR0FBQUYsZ0JBQUE7RUFFbkM7RUFDQSxJQUFNRyxRQUFRLEdBQUcsSUFBQUMsd0JBQWEsRUFBQ3hDLGNBQWMsQ0FBQztFQUM5QyxJQUFNeUMsYUFBYSxHQUFHRixRQUFRLENBQUNHLEdBQUcsQ0FBQyxVQUFBQyxTQUFTO0lBQUEsT0FBSU4sVUFBVSxDQUFDdkosR0FBRyxDQUFDNkosU0FBUyxDQUFDO0VBQUEsRUFBQztFQUMxRSxJQUFNQyxTQUFTLEdBQUc5TCxLQUFLLENBQUMyRyxPQUFPLENBQUM7SUFBQSxPQUFNZ0YsYUFBYTtFQUFBLEdBQUUsQ0FBQ0EsYUFBYSxDQUFDSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztFQUMvRSxJQUFNQyxhQUFhLEdBQUcsSUFBQUMsNEJBQWdCLEVBQUNILFNBQVMsRUFBRTVDLGNBQWMsQ0FBQztFQUNqRSxJQUFNZ0QsU0FBUyxHQUFHaEksTUFBTSxJQUFJLElBQUFpSSx3QkFBYSxFQUFDakksTUFBTSxDQUFDa0ksQ0FBQyxDQUFDO0VBQ25ELElBQU1DLGFBQWEsR0FBSW5JLE1BQU0sSUFBSSxJQUFBaUksd0JBQWEsRUFBQy9DLGFBQWEsQ0FBQyxJQUFLa0QsT0FBTyxDQUFDN0UsZ0JBQWdCLENBQUM4RSxLQUFLLENBQUM7RUFDakcsSUFBTUMsU0FBUyxHQUFHSCxhQUFhLElBQUluRCxjQUFjLENBQUN1RCxJQUFJLENBQUMsVUFBQUMsSUFBQTtJQUFBLElBQUdILEtBQUssR0FBQUcsSUFBQSxDQUFMSCxLQUFLO0lBQUEsT0FBT0EsS0FBSztFQUFBLEVBQUM7RUFFNUU7RUFDQSxJQUFNSSxTQUFTLEdBQUczTSxLQUFLLENBQUN1SixNQUFNLENBRzNCLElBQUksQ0FBQztFQUVSLElBQUFxRCxVQUFBLEdBQ0UsSUFBQUMsc0JBQVMsRUFBQ3hILE1BQU0sRUFBRTNCLFNBQVMsQ0FBQztJQUR0Qm9KLFFBQVEsR0FBQUYsVUFBQSxDQUFSRSxRQUFRO0lBQUVDLFlBQVksR0FBQUgsVUFBQSxDQUFaRyxZQUFZO0lBQUVDLGFBQWEsR0FBQUosVUFBQSxDQUFiSSxhQUFhO0lBQUVDLFlBQVksR0FBQUwsVUFBQSxDQUFaSyxZQUFZO0lBQUVDLGVBQWUsR0FBQU4sVUFBQSxDQUFmTSxlQUFlO0lBQUVDLFNBQVMsR0FBQVAsVUFBQSxDQUFUTyxTQUFTO0VBR3ZGO0VBQ0EsSUFBTUMsV0FBVyxHQUFHcE4sS0FBSyxDQUFDMkcsT0FBTyxDQUFDO0lBQUEsT0FBTXBDLE9BQU8sS0FBQSxJQUFBLElBQVBBLE9BQU8sS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBUEEsT0FBTyxDQUFHaUIsVUFBVSxDQUFDO0VBQUEsR0FBRSxDQUFDakIsT0FBTyxFQUFFaUIsVUFBVSxDQUFDLENBQUM7RUFDckYsSUFBTTZILFNBQVMsR0FDYixDQUFDbkIsU0FBUyxJQUFJWSxRQUFRLGtCQUN0QjlNLEtBQUssQ0FBQ3NOLGNBQWMsQ0FBQ0YsV0FBVyxDQUFDLElBQ2pDQSxXQUFXLENBQUNHLElBQUksS0FBS0MsbUJBQU8sSUFDM0JKLFdBQVcsQ0FBQzdKLEtBQXNCLENBQUNnSixLQUFLO0VBRTNDO0VBQ0EsSUFBSWtCLFlBQWlDO0VBQ3JDLElBQUlDLFlBQWlDO0VBQ3JDLElBQUlDLGdCQUFxQztFQUV6QyxJQUFJekIsU0FBUyxFQUFFO0lBQ2J3QixZQUFZLEdBQUc7TUFDYkUsU0FBUyxFQUFFbkksT0FBTyxHQUFHLFFBQVEsR0FBRyxNQUFNO01BQ3RDb0ksU0FBUyxFQUFFM0osTUFBTSxDQUFDa0k7SUQvUGhCLENDZ1FIO0VBQ0g7RUFFQSxJQUFJQyxhQUFhLEVBQUU7SUFDakJvQixZQUFZLEdBQUc7TUFBRUssU0FBUyxFQUFFO0lBQU0sQ0FBRTtJQUNwQztJQUVBLElBQUksQ0FBQzVCLFNBQVMsRUFBRTtNQUNkd0IsWUFBWSxHQUFHO1FBQUVFLFNBQVMsRUFBRTtNQUFRLENBQUU7SUFDeEM7SUFDQUQsZ0JBQWdCLEdBQUc7TUFDakJJLEtBQUssRUFBRTNFLGFBQWEsS0FBSyxJQUFJLEdBQUcsTUFBTSxHQUFHQSxhQUFhO01BQ3RENEUsUUFBUSxFQUFFO0lEalFSLENDa1FIO0VBQ0g7RUFFQSxJQUFNQyxjQUFjLEdBQUdqTyxLQUFLLENBQUNzRyxXQUFXLENBQUMsVUFBQ3VGLFNBQW9CLEVBQUVrQyxLQUFhLEVBQUk7SUFDL0V2QyxnQkFBZ0IsQ0FBQyxVQUFBMEMsTUFBTSxFQUFHO01BQ3hCLElBQUlBLE1BQU0sQ0FBQ2xNLEdBQUcsQ0FBQzZKLFNBQVMsQ0FBQyxLQUFLa0MsS0FBSyxFQUFFO1FBQ25DLElBQU1JLFNBQVMsR0FBRyxJQUFJOUMsR0FBRyxDQUFDNkMsTUFBTSxDQUFDO1FBQ2pDQyxTQUFTLENBQUN4TCxHQUFHLENBQUNrSixTQUFTLEVBQUVrQyxLQUFLLENBQUM7UUFDL0IsT0FBT0ksU0FBUztNQUNsQjtNQUNBLE9BQU9ELE1BQU07SUFDZixDQUFDLENBQUM7RUFDSixDQUFDLEVBQUUsRUFBRSxDQUFDO0VBRU4sSUFBQUUsZUFBQSxHQUEyQyxJQUFBQyx3QkFBYyxFQUFDLElBQUksQ0FBQztJQUFBQyxnQkFBQSxPQUFBcEgsZUFBQSxhQUFBa0gsZUFBQTtJQUF4REcsZUFBZSxHQUFBRCxnQkFBQTtJQUFFRSxlQUFlLEdBQUFGLGdCQUFBO0VBRXZDLFNBQVNHLFdBQVdBLENBQUNDLFVBQWtCLEVBQUVDLE1BQWlELEVBQUE7SUFDeEYsSUFBSSxDQUFDQSxNQUFNLEVBQUU7TUFDWDtJQUNGO0lBQ0EsSUFBSSxPQUFPQSxNQUFNLEtBQUssVUFBVSxFQUFFO01BQ2hDQSxNQUFNLENBQUNELFVBQVUsQ0FBQztJQUNwQixDQUFDLE1BQU0sSUFBSUMsTUFBTSxDQUFDRCxVQUFVLEtBQUtBLFVBQVUsRUFBRTtNQUMzQ0MsTUFBTSxDQUFDRCxVQUFVLEdBQUdBLFVBQVU7TUFFOUI7TUFDQSxJQUFJQyxNQUFNLENBQUNELFVBQVUsS0FBS0EsVUFBVSxFQUFFO1FBQ3BDRSxVQUFVLENBQUMsWUFBSztVQUNkRCxNQUFNLENBQUNELFVBQVUsR0FBR0EsVUFBVTtRQUNoQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO01BQ1A7SUFDRjtFQUNGO0VBRUEsSUFBQUcsZ0JBQUEsR0FBb0M3TyxLQUFLLENBQUNrSSxRQUFRLENBQWlCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQUE0RyxpQkFBQSxPQUFBNUgsZUFBQSxhQUFBMkgsZ0JBQUE7SUFBbkVFLFVBQVUsR0FBQUQsaUJBQUE7SUFBRUUsYUFBYSxHQUFBRixpQkFBQTtFQUVoQyxJQUFNRyxnQkFBZ0IsR0FBRyxJQUFBQyx1QkFBUSxFQUMvQixVQUFBQyxLQUFBLEVBQXVGO0lBQUEsSUFBcEZDLGFBQWEsR0FBQUQsS0FBQSxDQUFiQyxhQUFhO01BQUVWLFVBQVUsR0FBQVMsS0FBQSxDQUFWVCxVQUFVO0lEdlF4QixJQUFJckwsRUFBRTtJQ3dRUixJQUFNZ00sZ0JBQWdCLEdBQ3BCLE9BQU9YLFVBQVUsS0FBSyxRQUFRLEdBQUdBLFVBQVUsR0FBR1UsYUFBYSxDQUFDVixVQUFVO0lBRXhFLElBQU1ZLGFBQWEsR0FBR0YsYUFBYSxJQUFJck0sbUJBQW1CO0lBQzFELElBQUksQ0FBQ3lMLGVBQWUsQ0FBQSxDQUFFLElBQUlBLGVBQWUsQ0FBQSxDQUFFLEtBQUtjLGFBQWEsRUFBRTtNQUM3RGYsZUFBZSxDQUFDZSxhQUFhLENBQUM7TUFFOUJiLFdBQVcsQ0FBQ1ksZ0JBQWdCLEVBQUU3RixlQUFlLENBQUNLLE9BQU8sQ0FBQztNQUN0RDRFLFdBQVcsQ0FBQ1ksZ0JBQWdCLEVBQUU1RixhQUFhLENBQUNJLE9BQU8sQ0FBQztNQUNwRDRFLFdBQVcsQ0FBQ1ksZ0JBQWdCLEVBQUUxRSxnQkFBZ0IsQ0FBQ2QsT0FBTyxDQUFDO01BQ3ZENEUsV0FBVyxDQUFDWSxnQkFBZ0IsRUFBRSxDQUFBaE0sRUFBQSxHQUFBc0osU0FBUyxDQUFDOUMsT0FBTyxNQUFBLElBQUEsSUFBQXhHLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxDQUFFa00sYUFBYSxDQUFDO0lBQ2pFO0lBRUEsSUFBTUMsYUFBYSxHQUFHSixhQUFhLElBQUk1RixlQUFlLENBQUNLLE9BQU87SUFDOUQsSUFBSTJGLGFBQWEsRUFBRTtNQUNqQixJQUFNMUcsV0FBVztNQUNmO01BQ0FuRCxnQkFBZ0IsSUFBSVIsTUFBTSxJQUFJLE9BQU9pRSxhQUFhLEtBQUssUUFBUSxHQUMzREEsYUFBYSxHQUNib0csYUFBYSxDQUFDMUcsV0FBVztNQUMvQixJQUFNQyxXQUFXLEdBQUd5RyxhQUFhLENBQUN6RyxXQUFXO01BRTdDLElBQU0wRyxjQUFjLEdBQUdDLElBQUksQ0FBQ0MsR0FBRyxDQUFDTixnQkFBZ0IsQ0FBQztNQUNqREwsYUFBYSxDQUFDLFVBQUFZLEdBQUcsRUFBRztRQUNsQixJQUFNQyxjQUFjLEdBQW1CLENBQUNKLGNBQWMsRUFBRTNHLFdBQVcsR0FBR0MsV0FBVyxDQUFDO1FBQ2xGLE9BQU8sSUFBQStHLG1CQUFPLEVBQUNGLEdBQUcsRUFBRUMsY0FBYyxDQUFDLEdBQUdELEdBQUcsR0FBR0MsY0FBYztNQUM1RCxDQUFDLENBQUM7TUFFRjtNQUNBLElBQUkvRyxXQUFXLEtBQUtDLFdBQVcsRUFBRTtRQUMvQmdDLGNBQWMsQ0FBQyxLQUFLLENBQUM7UUFDckJJLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFDbkI7TUFDRjtNQUNBSixjQUFjLENBQUMwRSxjQUFjLEdBQUcsQ0FBQyxDQUFDO01BQ2xDdEUsWUFBWSxDQUFDc0UsY0FBYyxHQUFHM0csV0FBVyxHQUFHQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQzlEO0VBQ0YsQ0FBQyxDQUNGO0VBRUQsSUFBTWdILFlBQVksR0FBRyxJQUFBYix1QkFBUSxFQUFDLFVBQUN6TixDQUFnQyxFQUFJO0lBQ2pFd04sZ0JBQWdCLENBQUN4TixDQUFDLENBQUM7SUFDbkJzRCxRQUFRLEtBQUEsSUFBQSxJQUFSQSxRQUFRLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQVJBLFFBQVEsQ0FBR3RELENBQUMsQ0FBQztFQUNmLENBQUMsQ0FBQztFQUVGLElBQU11TyxlQUFlLEdBQUcsU0FBbEJBLGVBQWVBLENBQUEsRUFBUTtJRC9RdkIsSUFBSTNNLEVBQUU7SUNnUlYsSUFBSWdKLGFBQWEsSUFBSTVDLGFBQWEsQ0FBQ0ksT0FBTyxFQUFFO01BQzFDb0YsZ0JBQWdCLENBQUM7UUFDZkcsYUFBYSxFQUFFLElBQUFhLGlCQUFNLEVBQUN4RyxhQUFhLENBQUNJLE9BQU8sQ0FBZ0I7UUFDM0Q2RSxVQUFVLEVBQUUsQ0FBQXJMLEVBQUEsR0FBQW9HLGFBQWEsQ0FBQ0ksT0FBTyxNQUFBLElBQUEsSUFBQXhHLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxDQUFFcUw7TUQ5US9CLENDK1FMLENBQUM7SUFDSixDQUFDLE1BQU07TUFDTDNELGNBQWMsQ0FBQyxLQUFLLENBQUM7TUFDckJJLFlBQVksQ0FBQyxLQUFLLENBQUM7SUFDckI7RUFDRixDQUFDO0VBRUQsSUFBTStFLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBaUJBLENBQUlDLFdBQW9CLEVBQUk7SUQ5UTdDLElBQUk5TSxFQUFFLEVBQUVDLEVBQUUsRUFBRThNLEVBQUU7SUMrUWxCLENBQUEvTSxFQUFBLEdBQUFzSixTQUFTLENBQUM5QyxPQUFPLE1BQUEsSUFBQSxJQUFBeEcsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLENBQUVnTixxQkFBcUIsQ0FBQSxDQUFFO0lBQzFDLElBQUlDLFdBQVcsR0FBRyxDQUFBRixFQUFBLEdBQUFELFdBQVcsS0FBQSxJQUFBLElBQVhBLFdBQVcsS0FBQSxLQUFBLENBQUEsR0FBWEEsV0FBVyxHQUFJLENBQUE3TSxFQUFBLEdBQUFnRyxZQUFZLENBQUNPLE9BQU8sTUFBQSxJQUFBLElBQUF2RyxFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsQ0FBRTZNLFdBQVcsTUFBQSxJQUFBLElBQUFDLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxHQUFJLENBQUM7SUFDdkUsSUFBSXpLLGdCQUFnQixJQUFJUCxpQkFBaUIsSUFBSWtFLFlBQVksQ0FBQ08sT0FBTyxFQUFFO01BQ2pFeUcsV0FBVyxHQUFHbEwsaUJBQWlCLENBQUNrRSxZQUFZLENBQUNPLE9BQU8sRUFBRXlHLFdBQVcsQ0FBQyxJQUFJQSxXQUFXO0lBQ25GO0lBRUEsSUFBSUEsV0FBVyxLQUFLbEksY0FBYyxFQUFFO01BQ2xDNEgsZUFBZSxDQUFBLENBQUU7TUFDakIzSCxpQkFBaUIsQ0FBQ2lJLFdBQVcsQ0FBQztJQUNoQztFQUNGLENBQUM7RUFHRCxJQUFBQyxzQkFBZSxFQUFDLFlBQUs7SUFDbkIsSUFBSWxFLGFBQWEsRUFBRTtNQUNqQjZELGlCQUFpQixDQUFBLENBQUU7SUFDckI7RUFDRixDQUFDLEVBQUUsQ0FBQzdELGFBQWEsQ0FBQyxDQUFDO0VBRW5CO0VBQ0EsSUFBTW1FLE9BQU8sR0FBR3hRLEtBQUssQ0FBQ3VKLE1BQU0sQ0FBQyxLQUFLLENBQUM7RUFDbkN2SixLQUFLLENBQUN5USxTQUFTLENBQUMsWUFBSztJQUNuQjtJQUNBO0lBQ0EsSUFBSUQsT0FBTyxDQUFDM0csT0FBTyxFQUFFO01BQ25CbUcsZUFBZSxDQUFBLENBQUU7SUFDbkI7RUFDRixDQUFDLEVBQUUsQ0FBQzNELGFBQWEsRUFBRXBJLElBQUksRUFBRWdGLE9BQU8sQ0FBQ3ZELE1BQU0sQ0FBQyxDQUFDO0VBQ3pDMUYsS0FBSyxDQUFDeVEsU0FBUyxDQUFDLFlBQUs7SUFDbkJELE9BQU8sQ0FBQzNHLE9BQU8sR0FBRyxJQUFJO0VBQ3hCLENBQUMsRUFBRSxFQUFFLENBQUM7RUFFTjtFQUNBLElBQUE2RyxpQkFBQSxHQUEwQzFRLEtBQUssQ0FBQ2tJLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFBQXlJLGlCQUFBLE9BQUF6SixlQUFBLGFBQUF3SixpQkFBQTtJQUFwREUsYUFBYSxHQUFBRCxpQkFBQTtJQUFFRSxnQkFBZ0IsR0FBQUYsaUJBQUE7RUFFdEMsSUFBQUosc0JBQWUsRUFBQyxZQUFLO0lBQ25CLElBQUksQ0FBQ3BMLE1BQU0sSUFBSSxDQUFDUSxnQkFBZ0IsRUFBRTtNQUNoQyxJQUFJOEQsYUFBYSxDQUFDSSxPQUFPLFlBQVlpSCxPQUFPLEVBQUU7UUFDNUNELGdCQUFnQixDQUFDLElBQUFFLHdDQUFzQixFQUFDdEgsYUFBYSxDQUFDSSxPQUFPLENBQUMsQ0FBQ2tFLEtBQUssQ0FBQztNQUN2RSxDQUFDLE1BQU07UUFDTDhDLGdCQUFnQixDQUFDLElBQUFFLHdDQUFzQixFQUFDckgsc0JBQXNCLENBQUNHLE9BQU8sQ0FBQyxDQUFDa0UsS0FBSyxDQUFDO01BQ2hGO0lBQ0Y7RUFDRixDQUFDLEVBQUUsRUFBRSxDQUFDO0VBRU47RUFDQS9OLEtBQUssQ0FBQ3lRLFNBQVMsQ0FBQyxZQUFLO0lBQ25CLElBQUk5SyxnQkFBZ0IsSUFBSVQsWUFBWSxFQUFFO01BQ3BDQSxZQUFZLENBQUM4TCxJQUFJLENBQUNuSCxPQUFPLEdBQUdKLGFBQWEsQ0FBQ0ksT0FBTztJQUNuRDtFQUNGLENBQUMsQ0FBQztFQUVGO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsSUFBTW9ILHNCQUFzQixHQUFHalIsS0FBSyxDQUFDc0csV0FBVyxDQUM5QyxVQUFBNEssb0JBQW9CO0lBQUEsT0FDbEIsSUFBQUMsZ0JBQUEsRUFBQUMsb0JBQUEsRUFBQTtNQUFBQyxRQUFBLEVBQUEsQ0FDRSxJQUFBQyxlQUFBLEVBQUNDLGtCQUFNLEVBQUFuUCxNQUFBLENBQUFvQixNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQUswTixvQkFBb0IsQ0FBQSxDQUFJLEVBQ25DN0QsU0FBUyxLQUFLLEtBQUssSUFBSSxJQUFBaUUsZUFBQSxFQUFDRSxrQkFBTSxFQUFBcFAsTUFBQSxDQUFBb0IsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUFLME4sb0JBQW9CLEVBQUE7UUFBQUcsUUFBQSxFQUFHakU7TUFBVyxDQUFBLENBQUEsQ0FBVTtJQUFBLENBQUEsQ0FDL0U7RUFBQSxDQUNKLEVBQ0QsQ0FBQ0MsU0FBUyxFQUFFRCxXQUFXLENBQUMsQ0FDekI7RUFFRCxJQUFNcUUsc0JBQXNCLEdBQUd6UixLQUFLLENBQUNzRyxXQUFXLENBQzlDLFVBQUE0SyxvQkFBb0I7SUFBQSxPQUFJLElBQUFJLGVBQUEsRUFBQ0Usa0JBQU0sRUFBQXBQLE1BQUEsQ0FBQW9CLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFBSzBOLG9CQUFvQixFQUFBO01BQUFHLFFBQUEsRUFBR2pFO0lBQVcsQ0FBQSxDQUFBLENBQVU7RUFBQSxHQUNoRixDQUFDQSxXQUFXLENBQUMsQ0FDZDtFQUVEO0VBQ0EsSUFBTXNFLGNBQWMsR0FBR3JMLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sQ0FBQztFQUV2RDtFQUNBLElBQU1zTCxpQkFBaUIsR0FBRzNSLEtBQUssQ0FBQzJHLE9BQU8sQ0FBYyxZQUFLO0lBQ3hELElBQUl4QyxXQUFXLEVBQUU7TUFDZixPQUFPQSxXQUFXO0lBQ3BCO0lBQ0E7SUFDQTtJQUNBLElBQUlxSSxTQUFTLEVBQUU7TUFDYixPQUFPcEQsYUFBYSxLQUFLLGFBQWEsR0FBRyxNQUFNLEdBQUcsT0FBTztJQUMzRDtJQUNBLElBQUk4QyxTQUFTLElBQUlZLFFBQVEsSUFBSTVELGNBQWMsQ0FBQ3VELElBQUksQ0FBQyxVQUFBbUYsS0FBQTtNQUFBLElBQUdDLFFBQVEsR0FBQUQsS0FBQSxDQUFSQyxRQUFRO01BQUEsT0FBT0EsUUFBUTtJQUFBLEVBQUMsRUFBRTtNQUM1RSxPQUFPLE9BQU87SUFDaEI7SUFDQSxPQUFPLE1BQU07RUFDZixDQUFDLEVBQUUsQ0FBQzNGLFNBQVMsRUFBRU0sU0FBUyxFQUFFdEQsY0FBYyxFQUFFL0UsV0FBVyxFQUFFMkksUUFBUSxDQUFDLENBQUM7RUFFakUsSUFBSWdGLGNBQStCO0VBRW5DO0VBQ0EsSUFBTUMsV0FBVyxHQUFHO0lBQ2xCakcsU0FBUyxFQUFUQSxTQUFTO0lBQ1RrRyxVQUFVLEVBQUU5SSxjQUFjLENBQUN4RCxNQUFNO0lBQ2pDc0csYUFBYSxFQUFiQSxhQUFhO0lBQ2JuSCxXQUFXLEVBQVhBLFdBQVc7SUFDWHFILFNBQVMsRUFBVEEsU0FBUztJQUNUaEksTUFBTSxFQUFOQTtFRHBTQSxDQ3FTRDtFQUVEO0VBQ0EsSUFBTStOLFNBQVMsR0FBR2pTLEtBQUssQ0FBQzJHLE9BQU8sQ0FBa0IsWUFBSztJQUNwRCxJQUFJbEIsT0FBTyxFQUFFO01BQ1gsT0FBTyxJQUFJO0lBQ2I7SUFFQSxJQUFJLE9BQU85QixTQUFTLEtBQUssVUFBVSxFQUFFO01BQ25DLE9BQU9BLFNBQVMsQ0FBQSxDQUFFO0lBQ3BCO0lBQ0EsT0FBT0EsU0FBUztFQUNsQixDQUFDLEVBQUUsQ0FBQzhCLE9BQU8sRUFBRTlCLFNBQVMsQ0FBQyxDQUFDO0VBRXhCO0VBQ0EsSUFBTXVPLFNBQVMsR0FDYixJQUFBWixlQUFBLEVBQUNhLGdCQUFJLEVBQUE7SUFBQ2xPLElBQUksRUFBRXVCLFVBQVU7SUFBRTRNLGtCQUFrQixFQUFFbEcsU0FBUyxJQUFJRyxhQUFhLElBQUlTO0VBQVEsQ0FBQSxDQUNuRjtFQUVELElBQU11RixZQUFZLEdBQ2hCLElBQUFmLGVBQUEsRUFBQ2dCLG9CQUFRLEVBQUE7SUFBQ3hHLFNBQVMsRUFBRTVDLGNBQWMsQ0FBQzBDLEdBQUcsQ0FBQyxVQUFBMkcsS0FBQTtNQUFBLElBQUd4RSxLQUFLLEdBQUF3RSxLQUFBLENBQUx4RSxLQUFLO01BQUEsT0FBT0EsS0FBSztJQUFBLEVBQUM7SUFBRTlFLE9BQU8sRUFBRUM7RUFBYyxDQUFBLENBQ3ZGO0VBRUQsSUFBTXNKLGNBQWMsR0FDbEJoTyxPQUFPLEtBQUssSUFBSSxJQUFJQSxPQUFPLEtBQUsyQixTQUFTLEdBQ3ZDLElBQUFtTCxlQUFBLEVBQUEsU0FBQSxFQUFBO0lBQVMxTixTQUFTLEtBQUF3QyxNQUFBLENBQUsxQyxTQUFTLGFBQVU7SUFBQTJOLFFBQUEsRUFBRzdNO0VBQU8sQ0FBQSxDQUFXLEdBQzdEMkIsU0FBUztFQUVmLElBQU1zTSxTQUFTLEdBQUcsSUFBQUMscUJBQVMsRUFBQ25QLEtBQUssRUFBRTtJQUFFVSxJQUFJLEVBQUU7RUFBSSxDQUFFLENBQUM7RUFDbEQsSUFBTTBPLFNBQVMsR0FBRyxJQUFBRCxxQkFBUyxFQUFDblAsS0FBSyxFQUFFO0lBQUVxUCxJQUFJLEVBQUU7RUFBSSxDQUFFLENBQUM7RUFFbEQsSUFBSTFHLFNBQVMsSUFBSVksUUFBUSxFQUFFO0lBQ3pCO0lBQ0EsSUFBSStGLFdBQTRCO0lBRWhDLElBQUksT0FBTy9MLG1CQUFtQixLQUFLLFVBQVUsRUFBRTtNQUM3QytMLFdBQVcsR0FBRy9MLG1CQUFtQixDQUFDdEIsVUFBVSxFQUFFO1FBQzVDb0wsYUFBYSxFQUFiQSxhQUFhO1FBQ2J6TixHQUFHLEVBQUVzRyxhQUFhO1FBQ2xCMUUsUUFBUSxFQUFFa0s7TURuVE4sQ0NvVEwsQ0FBQztNQUVGOEMsV0FBVyxDQUFDakcsU0FBUyxHQUFHNUMsY0FBYyxDQUFDMEMsR0FBRyxDQUFDLFVBQUFrSCxLQUFBLEVBQVk3SSxLQUFLLEVBQUk7UUFBQSxJQUFsQjhELEtBQUssR0FBQStFLEtBQUEsQ0FBTC9FLEtBQUs7UUFDakQsSUFBTWdGLFFBQVEsR0FDWjlJLEtBQUssS0FBS2YsY0FBYyxDQUFDeEQsTUFBTSxHQUFHLENBQUMsR0FBSXFJLEtBQWdCLEdBQUc2QyxhQUFhLEdBQUc3QyxLQUFLO1FBQ2pGLElBQUksT0FBT2dGLFFBQVEsS0FBSyxRQUFRLElBQUksQ0FBQ0MsTUFBTSxDQUFDQyxLQUFLLENBQUNGLFFBQVEsQ0FBQyxFQUFFO1VBQzNELE9BQU9BLFFBQVE7UUFDakI7UUFFQSxJQUFJbE4sT0FBTyxDQUFDQyxHQUFHLENBQUNDLFFBQVEsS0FBSyxZQUFZLEVBQUU7VUFDekMsSUFBQUcsbUJBQU8sRUFDTDNDLEtBQUssQ0FBQzBGLE9BQU8sQ0FBQ3ZELE1BQU0sS0FBSyxDQUFDLEVBQzFCLDhGQUE4RixDQUMvRjtRQUNIO1FBQ0EsT0FBTyxDQUFDO01BQ1YsQ0FBQyxDQUFhO0lBQ2hCLENBQUMsTUFBTTtNQUNMbU4sV0FBVyxHQUNULElBQUF2QixlQUFBLEVBQUEsS0FBQSxFQUFBO1FBQ0V4TixLQUFLLEVBQUExQixNQUFBLENBQUFvQixNQUFBLENBQUFwQixNQUFBLENBQUFvQixNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQ0FpSyxZQUFZLENBQUEsRUFDWkMsWUFBWSxDQUFBO1FBRWpCM0ksUUFBUSxFQUFFZ0wsWUFBWTtRQUN0QjVNLEdBQUcsRUFBRXNHLGFBQWE7UUFDbEI3RixTQUFTLEtBQUF3QyxNQUFBLENBQUsxQyxTQUFTLFVBQU87UUFBQTJOLFFBQUEsRUFFOUIsSUFBQUYsZ0JBQUEsRUFBQ08sY0FBYyxFQUFBdFAsTUFBQSxDQUFBb0IsTUFBQSxDQUFBO1VBQ2JNLEtBQUssRUFBQTFCLE1BQUEsQ0FBQW9CLE1BQUEsQ0FBQXBCLE1BQUEsQ0FBQW9CLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFDQW1LLGdCQUFnQixDQUFBLEVBQUE7WUFDbkJ4SixXQUFXLEVBQUV3TjtVQUFpQixDQUFBO1FBQUEsQ0FBQSxFQUU1QmdCLFNBQVMsRUFBQTtVQUFBdEIsUUFBQSxFQUFBLENBRVptQixjQUFjLEVBQ2RILFlBQVksRUFDWkgsU0FBUyxFQUNULENBQUM3RSxTQUFTLElBQUlELFdBQVcsSUFDeEIsSUFBQWtFLGVBQUEsRUFBQ0Usa0JBQU0sRUFBQTtZQUFDeEYsYUFBYSxFQUFFQSxhQUFhO1lBQUU5QyxjQUFjLEVBQUVBLGNBQWM7WUFBQW1JLFFBQUEsRUFDakVqRTtVQUFXLENBQUEsQ0FFZjtRQUFBLENBQUEsQ0FBQTtNQUNjLENBQUEsQ0FFcEI7SUFDSDtJQUVBO0lBQ0EsSUFBTThGLGdCQUFnQixHQUFBOVEsTUFBQSxDQUFBb0IsTUFBQSxDQUFBcEIsTUFBQSxDQUFBb0IsTUFBQSxDQUFBcEIsTUFBQSxDQUFBb0IsTUFBQSxDQUFBO01BQ3BCMlAsTUFBTSxFQUFFLENBQUMzTixVQUFVLENBQUNFLE1BQU07TUFDMUIwTixnQkFBZ0IsRUFBRS9HLGFBQWEsSUFBSWpELGFBQWEsS0FBSztJQUFhLENBQUEsRUFDL0QySSxXQUFXLENBQUEsRUFDWDFJLGFBQWEsQ0FBQSxFQUFBO01BQ2hCakYsU0FBUyxFQUFUQSxTQUFTO01BQ1Q4SSxlQUFlLEVBQWZBLGVBQWU7TUFDZm5GLE9BQU8sRUFBRXFCLGFBQWE7TUFDdEJqRixXQUFXLEVBQUV3TixpQkFBaUI7TUFDOUI1TSxRQUFRLEVBQUVrSztJQUFnQixDQUFBLENBQzNCO0lBRUQ2QyxjQUFjLEdBQ1osSUFBQVgsZ0JBQUEsRUFBQUMsb0JBQUEsRUFBQTtNQUFBQyxRQUFBLEVBQUEsQ0FFRzNNLFVBQVUsS0FBSyxLQUFLLElBQ25CLElBQUE0TSxlQUFBLEVBQUMrQix1QkFBVyxFQUFBalIsTUFBQSxDQUFBb0IsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUNOMFAsZ0JBQWdCLEVBQUE7UUFDcEJJLGVBQWUsRUFBRXZHLFlBQVk7UUFDN0JuSixTQUFTLEtBQUF3QyxNQUFBLENBQUsxQyxTQUFTLFlBQVM7UUFDaENQLEdBQUcsRUFBRXFHLGVBQWU7UUFDcEIrSixRQUFRLEVBQUVsQixZQUFZO1FBQUFoQixRQUFBLEVBRXJCSjtNQUFzQixDQUFBLENBQUEsQ0FFMUIsRUFHQTRCLFdBQVcsRUFHWHhGLFNBQVMsSUFBSUEsU0FBUyxLQUFLLEtBQUssSUFDL0IsSUFBQWlFLGVBQUEsRUFBQytCLHVCQUFXLEVBQUFqUixNQUFBLENBQUFvQixNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQ04wUCxnQkFBZ0IsRUFBQTtRQUNwQk0sa0JBQWtCLEVBQUV4RyxhQUFhO1FBQ2pDcEosU0FBUyxLQUFBd0MsTUFBQSxDQUFLMUMsU0FBUyxhQUFVO1FBQ2pDUCxHQUFHLEVBQUV3SCxnQkFBZ0I7UUFDckI0SSxRQUFRLEVBQUVsQixZQUFZO1FBQUFoQixRQUFBLEVBRXJCSTtNQUFzQixDQUFBLENBQUEsQ0FFMUIsRUFFQTNFLFFBQVEsSUFBSXJELGFBQWEsQ0FBQ0ksT0FBTyxJQUFJSixhQUFhLENBQUNJLE9BQU8sWUFBWWlILE9BQU8sSUFDNUUsSUFBQVEsZUFBQSxFQUFDbUMsMkJBQWUsRUFBQTtRQUNkdFEsR0FBRyxFQUFFd0osU0FBUztRQUNkTSxZQUFZLEVBQUVBLFlBQVk7UUFDMUJ4RCxhQUFhLEVBQUVBLGFBQWE7UUFDNUIxRSxRQUFRLEVBQUVrSyxnQkFBZ0I7UUFDMUI5QixTQUFTLEVBQUVBLFNBQVM7UUFDcEIvSSxTQUFTLEVBQUVBO01BQVMsQ0FBQSxDQUV2QjtJQUFBLENBQUEsQ0FFSjtFQUNILENBQUMsTUFBTTtJQUNMO0lBQ0EwTixjQUFjLEdBQ1osSUFBQVIsZUFBQSxFQUFBLEtBQUEsRUFBQTtNQUNFeE4sS0FBSyxFQUFBMUIsTUFBQSxDQUFBb0IsTUFBQSxDQUFBcEIsTUFBQSxDQUFBb0IsTUFBQSxDQUFBcEIsTUFBQSxDQUFBb0IsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUFPaUssWUFBWSxDQUFBLEVBQUtDLFlBQVksQ0FBQSxFQUFLMUosTUFBTSxLQUFBLElBQUEsSUFBTkEsTUFBTSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFOQSxNQUFNLENBQUUwUCxPQUFPLENBQUE7TUFDN0Q5UCxTQUFTLEVBQUUsSUFBQStQLFdBQUksS0FBQXZOLE1BQUEsQ0FBSTFDLFNBQVMsZUFBWUssVUFBVSxLQUFBLElBQUEsSUFBVkEsVUFBVSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFWQSxVQUFVLENBQUUyUCxPQUFPLENBQUM7TUFDNUQzTyxRQUFRLEVBQUVrSyxnQkFBZ0I7TUFDMUI5TCxHQUFHLEVBQUVzRyxhQUFhO01BQUE0SCxRQUFBLEVBRWxCLElBQUFGLGdCQUFBLEVBQUNPLGNBQWMsRUFBQXRQLE1BQUEsQ0FBQW9CLE1BQUEsQ0FBQTtRQUNiTSxLQUFLLEVBQUExQixNQUFBLENBQUFvQixNQUFBLENBQUFwQixNQUFBLENBQUFvQixNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQU9tSyxnQkFBZ0IsQ0FBQSxFQUFBO1VBQUV4SixXQUFXLEVBQUV3TjtRQUFpQixDQUFBO01BQUEsQ0FBQSxFQUN4RGdCLFNBQVMsRUFBQTtRQUFBdEIsUUFBQSxFQUFBLENBRVptQixjQUFjLEVBQ2RILFlBQVksRUFDWjNOLFVBQVUsS0FBSyxLQUFLLElBQUksSUFBQTRNLGVBQUEsRUFBQ0Msa0JBQU0sRUFBQW5QLE1BQUEsQ0FBQW9CLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFBS3VPLFdBQVcsRUFBTTFJLGFBQWEsQ0FBQSxDQUFJLEVBQ3RFNkksU0FBUyxFQUNUOUUsV0FBVyxJQUNWLElBQUFrRSxlQUFBLEVBQUNFLGtCQUFNLEVBQUE7VUFBQ3hGLGFBQWEsRUFBRUEsYUFBYTtVQUFFOUMsY0FBYyxFQUFFQSxjQUFjO1VBQUFtSSxRQUFBLEVBQ2pFakU7UUFBVyxDQUFBLENBRWY7TUFBQSxDQUFBLENBQUE7SUFDYyxDQUFBLENBRXBCO0VBQ0g7RUFFQSxJQUFNd0csVUFBVSxHQUFBeFIsTUFBQSxDQUFBb0IsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUNYTSxLQUFLLENBQ1Q7RUFFRDtFQUNBLElBQUlnSixRQUFRLEVBQUU7SUFDWjhHLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHMUssY0FBYyxDQUFDeEQsTUFBTTtFQUN2RDtFQUVBLElBQUltTyxTQUFTLEdBQ1gsSUFBQTFDLGdCQUFBLEVBQUEsS0FBQSxFQUFBL08sTUFBQSxDQUFBb0IsTUFBQSxDQUFBO0lBQ0VJLFNBQVMsRUFBRSxJQUFBK1AsV0FBSSxFQUFDalEsU0FBUyxFQUFFRSxTQUFTLEdBQUFSLEtBQUEsV0FBQTBRLGdCQUFBLGlCQUFBQSxnQkFBQSxpQkFBQUEsZ0JBQUEsaUJBQUFBLGdCQUFBLGlCQUFBQSxnQkFBQSxpQkFBQUEsZ0JBQUEsaUJBQUFBLGdCQUFBLGlCQUFBQSxnQkFBQSxpQkFBQUEsZ0JBQUEsaUJBQUFBLGdCQUFBLGFBQUExUSxLQUFBLEtBQUFnRCxNQUFBLENBQzlCMUMsU0FBUyxXQUFTVSxTQUFTLEtBQUssS0FBSyxNQUFBZ0MsTUFBQSxDQUNyQzFDLFNBQVMsd0JBQXNCMkksYUFBYSxNQUFBakcsTUFBQSxDQUM1QzFDLFNBQVMsc0JBQW9CMkksYUFBYSxNQUFBakcsTUFBQSxDQUMxQzFDLFNBQVMsNkJBQTJCMkksYUFBYSxJQUFJdkIsV0FBVyxNQUFBMUUsTUFBQSxDQUNoRTFDLFNBQVMsMkJBQXlCMkksYUFBYSxJQUFJbkIsU0FBUyxNQUFBOUUsTUFBQSxDQUM1RDFDLFNBQVMsb0JBQWtCUyxXQUFXLEtBQUssT0FBTyxNQUFBaUMsTUFBQSxDQUNsRDFDLFNBQVMsb0JBQWtCd0ksU0FBUyxNQUFBOUYsTUFBQSxDQUVwQzFDLFNBQVMsb0JBQWtCOEksU0FBUyxNQUFBcEcsTUFBQSxDQUNwQzFDLFNBQVMseUJBQXVCMkksYUFBYSxNQUFBakcsTUFBQSxDQUM3QzFDLFNBQVMscUJBQW1CLENBQUFMLEVBQUEsR0FBQTZGLGNBQWMsQ0FBQyxDQUFDLENBQUMsTUFBQSxJQUFBLElBQUE3RixFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsQ0FBRWtKLEtBQUssT0FBQXVILGdCQUFBLGFBQUExUSxLQUFBLEtBQUFnRCxNQUFBLENBQ3BEMUMsU0FBUyxtQkFBaUIsQ0FBQSxDQUFBSixFQUFBLEdBQUE0RixjQUFjLENBQUNBLGNBQWMsQ0FBQ3hELE1BQU0sR0FBRyxDQUFDLENBQUMsTUFBQSxJQUFBLElBQUFwQyxFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsQ0FBRWlKLEtBQUssTUFBSyxLQUFLLEVBQ3pGLENBQUM7SUFDRnpJLEtBQUssRUFBRThQLFVBQVU7SUFDakJuUCxFQUFFLEVBQUVBLEVBQUU7SUFDTnRCLEdBQUcsRUFBRW1HO0VBQVksQ0FBQSxFQUNibUosU0FBUyxFQUFBO0lBQUFwQixRQUFBLEVBQUEsQ0FFWmhOLEtBQUssSUFDSixJQUFBaU4sZUFBQSxFQUFDeUMsaUJBQUssRUFBQTtNQUFDblEsU0FBUyxFQUFFLElBQUErUCxXQUFJLEtBQUF2TixNQUFBLENBQUkxQyxTQUFTLGFBQVVLLFVBQVUsS0FBQSxJQUFBLElBQVZBLFVBQVUsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBVkEsVUFBVSxDQUFFTSxLQUFLLENBQUM7TUFBRVAsS0FBSyxFQUFFRSxNQUFNLEtBQUEsSUFBQSxJQUFOQSxNQUFNLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQU5BLE1BQU0sQ0FBRUssS0FBSztNQUFBZ04sUUFBQSxFQUNsRmhOLEtBQUssQ0FBQ21CLFVBQVU7SUFBQyxDQUFBLENBRXJCLEVBQ0QsSUFBQThMLGVBQUEsRUFBQSxLQUFBLEVBQUE7TUFDRW5PLEdBQUcsRUFBRXVHLHNCQUFzQjtNQUMzQjlGLFNBQVMsRUFBRSxJQUFBK1AsV0FBSSxLQUFBdk4sTUFBQSxDQUFJMUMsU0FBUyxpQkFBY0ssVUFBVSxLQUFBLElBQUEsSUFBVkEsVUFBVSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFWQSxVQUFVLENBQUVpUSxPQUFPLENBQUM7TUFDOURsUSxLQUFLLEVBQUVFLE1BQU0sS0FBQSxJQUFBLElBQU5BLE1BQU0sS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBTkEsTUFBTSxDQUFFZ1EsT0FBTztNQUFBM0MsUUFBQSxFQUVyQlM7SUFBYyxDQUFBLENBQ1gsRUFDTHhOLE1BQU0sSUFDTCxJQUFBZ04sZUFBQSxFQUFDeUMsaUJBQUssRUFBQTtNQUFDblEsU0FBUyxFQUFFLElBQUErUCxXQUFJLEtBQUF2TixNQUFBLENBQUkxQyxTQUFTLGNBQVdLLFVBQVUsS0FBQSxJQUFBLElBQVZBLFVBQVUsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBVkEsVUFBVSxDQUFFTyxNQUFNLENBQUM7TUFBRVIsS0FBSyxFQUFFRSxNQUFNLEtBQUEsSUFBQSxJQUFOQSxNQUFNLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQU5BLE1BQU0sQ0FBRU0sTUFBTTtNQUFBK00sUUFBQSxFQUNyRi9NLE1BQU0sQ0FBQ2tCLFVBQVU7SUFBQyxDQUFBLENBRXRCO0VBQUEsQ0FBQSxDQUFBLENBRUo7RUFFRCxJQUFJNkcsYUFBYSxFQUFFO0lBQ2pCd0gsU0FBUyxHQUNQLElBQUF2QyxlQUFBLEVBQUMyQywwQkFBYyxFQUFBO01BQUNDLFFBQVEsRUFBRSxTQUFWQSxRQUFRQSxDQUFBQyxLQUFBO1FBQUEsSUFBS2hFLFdBQVcsR0FBQWdFLEtBQUEsQ0FBWGhFLFdBQVc7UUFBQSxPQUFPRCxpQkFBaUIsQ0FBQ0MsV0FBVyxDQUFDO01BQUE7TUFBQWtCLFFBQUEsRUFDMUV3QztJQUFTLENBQUEsQ0FFYjtFQUNIO0VBRUEsSUFBTU8sYUFBYSxHQUFHLElBQUFDLHdCQUFZLEVBQUNuTCxjQUFjLEVBQUU4QyxhQUFhLENBQUM7RUFFakUsSUFBTXNJLGlCQUFpQixHQUFHdFUsS0FBSyxDQUFDMkcsT0FBTyxDQUNyQztJQUFBLE9BQU87TUFDTDtNQUNBb0IsT0FBTyxFQUFFcUIsYUFBYTtNQUN0QjJGLFVBQVUsRUFBVkEsVUFBVTtNQUVWaEwsVUFBVSxFQUFWQSxVQUFVO01BQ1ZDLE1BQU0sRUFBTkEsTUFBTTtNQUVOO01BQ0FOLFNBQVMsRUFBVEEsU0FBUztNQUNUMkMsWUFBWSxFQUFaQSxZQUFZO01BQ1p1SyxhQUFhLEVBQWJBLGFBQWE7TUFDYnhNLFNBQVMsRUFBVEEsU0FBUztNQUNUZ1EsYUFBYSxFQUFiQSxhQUFhO01BQ2J0SCxRQUFRLEVBQVJBLFFBQVE7TUFFUjFFLGNBQWMsRUFBZEEsY0FBYztNQUNkOEQsU0FBUyxFQUFUQSxTQUFTO01BQ1RNLFNBQVMsRUFBVEEsU0FBUztNQUNUSCxhQUFhLEVBQWJBLGFBQWE7TUFFYjtNQUNBbEksV0FBVyxFQUFFd04saUJBQWlCO01BQzlCOU4sWUFBWSxFQUFaQSxZQUFZO01BQ1owUSxvQkFBb0IsRUFBRTlNLGdCQUFnQixDQUFDOE0sb0JBQW9CO01BQzNEM0wsVUFBVSxFQUFFaEIsZ0JBQWdCO01BQzVCRixjQUFjLEVBQWRBLGNBQWM7TUFDZDhNLGdCQUFnQixFQUFFL00sZ0JBQWdCLENBQUMrTSxnQkFBZ0I7TUFDbkQvTCxpQkFBaUIsRUFBRWhCLGdCQUFnQixDQUFDZ0IsaUJBQWlCO01BQ3JEZ00saUJBQWlCLEVBQUVoTixnQkFBZ0IsQ0FBQ2dOLGlCQUFpQjtNQUNyRDNNLGVBQWUsRUFBZkEsZUFBZTtNQUNmZSxxQkFBcUIsRUFBRXBCLGdCQUFnQixDQUFDb0IscUJBQXFCO01BQzdENkwsVUFBVSxFQUFFak4sZ0JBQWdCLENBQUNpTixVQUFVO01BQ3ZDQyxtQkFBbUIsRUFBRXpMLGNBQWMsQ0FBQzBMLEtBQUssQ0FBQyxVQUFBQyxHQUFHO1FBQUEsT0FBSUEsR0FBRyxDQUFDdEksS0FBSyxLQUFLLE9BQU87TUFBQSxFQUFDO01BQ3ZFMEYsU0FBUyxFQUFUQSxTQUFTO01BRVQ7TUFDQWhKLE9BQU8sRUFBUEEsT0FBTztNQUNQQyxjQUFjLEVBQWRBLGNBQWM7TUFDZCtFLGNBQWMsRUFBZEEsY0FBYztNQUNkbkMsU0FBUyxFQUFUQSxTQUFTO01BRVQ7TUFDQWdKLGFBQWEsRUFBRTNOLFFBQVE7TUFDdkI0TixXQUFXLEVBQUUzTixNQUFNO01BQ25CQyxPQUFPLEVBQVBBLE9BQU87TUFDUDJOLGFBQWEsRUFBRXZOLGdCQUFnQixDQUFDdU4sYUFBYTtNQUM3Q3BRLEtBQUssRUFBTEEsS0FBSztNQUVMOEIsU0FBUyxFQUFUQSxTQUFTO01BQ1RpQyxZQUFZLEVBQUVoQixrQkFBa0I7TUFDaENzTixrQkFBa0IsRUFBRXBOLHdCQUF3QjtNQUU1Q3RDLFlBQVksRUFBWkEsWUFBWTtNQUVaO01BQ0FULGdCQUFnQixFQUFoQkE7SUQ3Y0YsQ0M4Y0M7RUFBQSxDQUFDLEVBQ0Y7RUFDRTtFQUNBc0UsYUFBYSxFQUNiMkYsVUFBVSxFQUNWaEwsVUFBVSxFQUNWQyxNQUFNO0VBRU47RUFDQU4sU0FBUyxFQUNUMkMsWUFBWSxFQUNadUssYUFBYSxFQUNieE0sU0FBUyxFQUNUZ1EsYUFBYSxFQUNidEgsUUFBUSxFQUVSMUUsY0FBYyxFQUNkOEQsU0FBUyxFQUNUTSxTQUFTLEVBQ1RILGFBQWE7RUFFYjtFQUNBc0YsaUJBQWlCLEVBQ2pCOU4sWUFBWSxFQUNaNEQsZ0JBQWdCLENBQUM4TSxvQkFBb0IsRUFDckMzTSxnQkFBZ0IsRUFDaEJGLGNBQWMsRUFDZEQsZ0JBQWdCLENBQUMrTSxnQkFBZ0IsRUFDakMvTSxnQkFBZ0IsQ0FBQ2dCLGlCQUFpQixFQUNsQ2hCLGdCQUFnQixDQUFDZ04saUJBQWlCLEVBQ2xDM00sZUFBZSxFQUNmTCxnQkFBZ0IsQ0FBQ29CLHFCQUFxQixFQUN0Q3BCLGdCQUFnQixDQUFDaU4sVUFBVSxFQUMzQnpDLFNBQVM7RUFFVDtFQUNBaEosT0FBTyxFQUNQQyxjQUFjLEVBQ2QrRSxjQUFjLEVBQ2RuQyxTQUFTO0VBRVQ7RUFDQTNFLFFBQVEsRUFDUkMsTUFBTSxFQUNOQyxPQUFPLEVBQ1BJLGdCQUFnQixDQUFDdU4sYUFBYSxFQUM5QnBRLEtBQUssRUFFTDhCLFNBQVMsRUFDVGlCLGtCQUFrQixFQUNsQkUsd0JBQXdCLEVBRXhCdEMsWUFBWSxFQUVaVCxnQkFBZ0IsQ0FDakIsQ0FDRjtFQUVELE9BQU8sSUFBQXdNLGVBQUEsRUFBQzRELHdCQUFZLENBQUNDLFFBQVEsRUFBQTtJQUFDQyxLQUFLLEVBQUVkLGlCQUFpQjtJQUFBakQsUUFBQSxFQUFHd0M7RUFBUyxDQUFBLENBQXlCO0FBQzdGLENBQUM7QUFNRCxJQUFNd0IsUUFBUSxnQkFBR3JWLEtBQUssQ0FBQ3NWLFVBQVUsQ0FBQ3JTLEtBQUssQ0FBd0I7QUFFL0QsSUFBSTRDLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDQyxRQUFRLEtBQUssWUFBWSxFQUFFO0VBQ3pDc1AsUUFBUSxDQUFDRSxXQUFXLEdBQUcsT0FBTztBQUNoQztBQUVPLElBQU1DLFFBQVEsR0FBQTNTLE9BQUEsQ0FBQTJTLFFBQUEsR0FBRyxTQUFYQSxRQUFRQSxDQUFJQyxtQkFBdUQsRUFBSTtFQUNsRixPQUFPLElBQUFDLDJCQUFhLEVBQUNMLFFBQVEsRUFBRUksbUJBQW1CLENBQUM7QUFDckQsQ0FBQztBQUVELElBQU1FLGNBQWMsR0FBR0gsUUFBUSxDQUFBLENBQUU7QUFVaENHLGNBQXFDLENBQUNDLGFBQWEsR0FBR0EsdUJBQWE7QUFFbkVELGNBQXFDLENBQUMvUCxjQUFjLEdBQUdBLHdCQUFjO0FBRXJFK1AsY0FBcUMsQ0FBQ0UsTUFBTSxHQUFHQSxrQkFBTTtBQUVyREYsY0FBcUMsQ0FBQ0csV0FBVyxHQUFHQSx1QkFBVztBQUUvREgsY0FBcUMsQ0FBQ25JLE9BQU8sR0FBR3VJLHdCQUFnQjtBQUFDLElBQUFDLFFBQUEsR0FBQW5ULE9BQUEsY0FFbkQ4UyxjQUFvQyIsImZpbGUiOiJjb21wb25lbnRzL1RhYmxlL2ludGVybmFsL2tlcm5lbC9UYWJsZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBGcmFnbWVudCBhcyBfRnJhZ21lbnQsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IGNsc3ggfSBmcm9tICdjbHN4JztcbmltcG9ydCBSZXNpemVPYnNlcnZlciBmcm9tICcuLi8uLi8uLi9SZXNpemVPYnNlcnZlcic7XG5pbXBvcnQgeyBnZXRUYXJnZXRTY3JvbGxCYXJTaXplIH0gZnJvbSAnLi91dGlscy9nZXRTY3JvbGxCYXJTaXplJztcbmltcG9ydCB7IHVzZUV2ZW50Q2FsbGJhY2sgYXMgdXNlRXZlbnQgfSBmcm9tICdAMW1vbmV5L2hvb2tzJztcbmltcG9ydCBwaWNrQXR0cnMgZnJvbSAnLi91dGlscy9waWNrQXR0cnMnO1xuaW1wb3J0IGdldFZhbHVlIGZyb20gJy4vdXRpbHMvZ2V0JztcbmltcG9ydCB3YXJuaW5nIGZyb20gJy4vdXRpbHMvd2FybmluZyc7XG5pbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgQm9keSBmcm9tICcuL0JvZHknO1xuaW1wb3J0IENvbEdyb3VwIGZyb20gJy4vQ29sR3JvdXAnO1xuaW1wb3J0IHsgRVhQQU5EX0NPTFVNTiwgSU5URVJOQUxfSE9PS1MgfSBmcm9tICcuL2NvbnN0YW50JztcbmltcG9ydCBUYWJsZUNvbnRleHQsIHsgbWFrZUltbXV0YWJsZSB9IGZyb20gJy4vY29udGV4dC9UYWJsZUNvbnRleHQnO1xuaW1wb3J0IEZpeGVkSG9sZGVyIGZyb20gJy4vRml4ZWRIb2xkZXInO1xuaW1wb3J0IEZvb3RlciwgeyBGb290ZXJDb21wb25lbnRzIH0gZnJvbSAnLi9Gb290ZXInO1xuaW1wb3J0IFN1bW1hcnkgZnJvbSAnLi9Gb290ZXIvU3VtbWFyeSc7XG5pbXBvcnQgSGVhZGVyIGZyb20gJy4vSGVhZGVyL0hlYWRlcic7XG5pbXBvcnQgdXNlQ29sdW1ucyBmcm9tICcuL2hvb2tzL3VzZUNvbHVtbnMnO1xuaW1wb3J0IHVzZUV4cGFuZCBmcm9tICcuL2hvb2tzL3VzZUV4cGFuZCc7XG5pbXBvcnQgdXNlRml4ZWRJbmZvIGZyb20gJy4vaG9va3MvdXNlRml4ZWRJbmZvJztcbmltcG9ydCB7IHVzZVRpbWVvdXRMb2NrIH0gZnJvbSAnLi9ob29rcy91c2VGcmFtZSc7XG5pbXBvcnQgdXNlSG92ZXIgZnJvbSAnLi9ob29rcy91c2VIb3Zlcic7XG5pbXBvcnQgdXNlU3RpY2t5IGZyb20gJy4vaG9va3MvdXNlU3RpY2t5JztcbmltcG9ydCB1c2VTdGlja3lPZmZzZXRzIGZyb20gJy4vaG9va3MvdXNlU3RpY2t5T2Zmc2V0cyc7XG5pbXBvcnQgUGFuZWwgZnJvbSAnLi9QYW5lbCc7XG5pbXBvcnQgU3RpY2t5U2Nyb2xsQmFyIGZyb20gJy4vc3RpY2t5U2Nyb2xsQmFyJztcbmltcG9ydCBDb2x1bW4gZnJvbSAnLi9zdWdhci9Db2x1bW4nO1xuaW1wb3J0IENvbHVtbkdyb3VwIGZyb20gJy4vc3VnYXIvQ29sdW1uR3JvdXAnO1xuaW1wb3J0IHsgZ2V0Q29sdW1uc0tleSwgdmFsaWRhdGVWYWx1ZSwgdmFsaWROdW1iZXJWYWx1ZSB9IGZyb20gJy4vdXRpbHMvdmFsdWVVdGlsJztcbmltcG9ydCB7IGdldERPTSB9IGZyb20gJy4uLy4uLy4uL1Jlc2l6ZU9ic2VydmVyL3V0aWxzL3JlYWN0VXRpbCc7XG5pbXBvcnQgaXNFcXVhbCBmcm9tICcuL3NlbGVjdG9yLWNvbnRleHQvaXNFcXVhbCc7XG5pbXBvcnQgeyB1c2VMYXlvdXRFZmZlY3QgfSBmcm9tICdAMW1vbmV5L2hvb2tzJztcbmV4cG9ydCBjb25zdCBERUZBVUxUX1BSRUZJWCA9ICdvbS10YWJsZSc7XG4vLyBVc2VkIGZvciBjb25kaXRpb25zIGNhY2hlXG5jb25zdCBFTVBUWV9EQVRBID0gW107XG4vLyBVc2VkIGZvciBjdXN0b21pemUgc2Nyb2xsXG5jb25zdCBFTVBUWV9TQ1JPTExfVEFSR0VUID0ge307XG5mdW5jdGlvbiBkZWZhdWx0RW1wdHkoKSB7XG4gICAgcmV0dXJuICdObyBEYXRhJztcbn1cbmNvbnN0IFRhYmxlID0gKHRhYmxlUHJvcHMsIHJlZikgPT4ge1xuICAgIHZhciBfYSwgX2I7XG4gICAgY29uc3QgcHJvcHMgPSBPYmplY3QuYXNzaWduKHsgcm93S2V5OiAna2V5JywgcHJlZml4Q2xzOiBERUZBVUxUX1BSRUZJWCwgZW1wdHlUZXh0OiBkZWZhdWx0RW1wdHkgfSwgdGFibGVQcm9wcyk7XG4gICAgY29uc3QgeyBwcmVmaXhDbHMsIGNsYXNzTmFtZSwgcm93Q2xhc3NOYW1lLCBzdHlsZSwgY2xhc3NOYW1lcywgc3R5bGVzLCBkYXRhLCByb3dLZXksIHNjcm9sbCwgdGFibGVMYXlvdXQsIGRpcmVjdGlvbiwgXG4gICAgLy8gQWRkaXRpb25hbCBQYXJ0XG4gICAgdGl0bGUsIGZvb3Rlciwgc3VtbWFyeSwgY2FwdGlvbiwgXG4gICAgLy8gQ3VzdG9taXplXG4gICAgaWQsIHNob3dIZWFkZXIsIGNvbXBvbmVudHMsIGVtcHR5VGV4dCwgb25Sb3csIG9uSGVhZGVyUm93LCBcbiAgICAvLyBNZWFzdXJlIFJvd1xuICAgIG1lYXN1cmVSb3dSZW5kZXIsIFxuICAgIC8vIEV2ZW50c1xuICAgIG9uU2Nyb2xsLCBcbiAgICAvLyBJbnRlcm5hbFxuICAgIGludGVybmFsSG9va3MsIHRyYW5zZm9ybUNvbHVtbnMsIGludGVybmFsUmVmcywgdGFpbG9yLCBnZXRDb250YWluZXJXaWR0aCwgc3RpY2t5LCByb3dIb3ZlcmFibGUgPSB0cnVlLCB9ID0gcHJvcHM7XG4gICAgY29uc3QgbWVyZ2VkRGF0YSA9IGRhdGEgfHwgRU1QVFlfREFUQTtcbiAgICBjb25zdCBoYXNEYXRhID0gISFtZXJnZWREYXRhLmxlbmd0aDtcbiAgICBjb25zdCB1c2VJbnRlcm5hbEhvb2tzID0gaW50ZXJuYWxIb29rcyA9PT0gSU5URVJOQUxfSE9PS1M7XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09IFdhcm5pbmcgPT09PT09PT09PT09PT09PT09PT09PVxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIFtcbiAgICAgICAgICAgICdvblJvd0NsaWNrJyxcbiAgICAgICAgICAgICdvblJvd0RvdWJsZUNsaWNrJyxcbiAgICAgICAgICAgICdvblJvd0NvbnRleHRNZW51JyxcbiAgICAgICAgICAgICdvblJvd01vdXNlRW50ZXInLFxuICAgICAgICAgICAgJ29uUm93TW91c2VMZWF2ZScsXG4gICAgICAgIF0uZm9yRWFjaChuYW1lID0+IHtcbiAgICAgICAgICAgIHdhcm5pbmcocHJvcHNbbmFtZV0gPT09IHVuZGVmaW5lZCwgYFxcYCR7bmFtZX1cXGAgaXMgcmVtb3ZlZCwgcGxlYXNlIHVzZSBcXGBvblJvd1xcYCBpbnN0ZWFkLmApO1xuICAgICAgICB9KTtcbiAgICAgICAgd2FybmluZyghKCdnZXRCb2R5V3JhcHBlcicgaW4gcHJvcHMpLCAnYGdldEJvZHlXcmFwcGVyYCBpcyBkZXByZWNhdGVkLCBwbGVhc2UgdXNlIGN1c3RvbSBgY29tcG9uZW50c2AgaW5zdGVhZC4nKTtcbiAgICB9XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT0gQ3VzdG9taXplID09PT09PT09PT09PT09PT09PT09PVxuICAgIGNvbnN0IGdldENvbXBvbmVudCA9IFJlYWN0LnVzZUNhbGxiYWNrKChwYXRoLCBkZWZhdWx0Q29tcG9uZW50KSA9PiBnZXRWYWx1ZShjb21wb25lbnRzLCBwYXRoKSB8fCBkZWZhdWx0Q29tcG9uZW50LCBbY29tcG9uZW50c10pO1xuICAgIGNvbnN0IGdldFJvd0tleSA9IFJlYWN0LnVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHJvd0tleSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcmV0dXJuIHJvd0tleTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKHJlY29yZCkgPT4ge1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gcmVjb3JkICYmIHJlY29yZFtyb3dLZXldO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgICAgICB3YXJuaW5nKGtleSAhPT0gdW5kZWZpbmVkLCAnRWFjaCByZWNvcmQgaW4gdGFibGUgc2hvdWxkIGhhdmUgYSB1bmlxdWUgYGtleWAgcHJvcCwgb3Igc2V0IGByb3dLZXlgIHRvIGFuIHVuaXF1ZSBwcmltYXJ5IGtleS4nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBrZXk7XG4gICAgICAgIH07XG4gICAgfSwgW3Jvd0tleV0pO1xuICAgIGNvbnN0IGN1c3RvbWl6ZVNjcm9sbEJvZHkgPSBnZXRDb21wb25lbnQoWydib2R5J10pO1xuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT0gSG92ZXIgPT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBjb25zdCBbc3RhcnRSb3csIGVuZFJvdywgb25Ib3Zlcl0gPSB1c2VIb3ZlcigpO1xuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT0gRXhwYW5kID09PT09PT09PT09PT09PT09PT09PT1cbiAgICBjb25zdCBbZXhwYW5kYWJsZUNvbmZpZywgZXhwYW5kYWJsZVR5cGUsIG1lcmdlZEV4cGFuZGVkS2V5cywgbWVyZ2VkRXhwYW5kSWNvbiwgbWVyZ2VkQ2hpbGRyZW5Db2x1bW5OYW1lLCBvblRyaWdnZXJFeHBhbmQsXSA9IHVzZUV4cGFuZChwcm9wcywgbWVyZ2VkRGF0YSwgZ2V0Um93S2V5KTtcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09IENvbHVtbiA9PT09PT09PT09PT09PT09PT09PT09XG4gICAgY29uc3Qgc2Nyb2xsWCA9IHNjcm9sbCA9PT0gbnVsbCB8fCBzY3JvbGwgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjcm9sbC54O1xuICAgIGNvbnN0IFtjb21wb25lbnRXaWR0aCwgc2V0Q29tcG9uZW50V2lkdGhdID0gUmVhY3QudXNlU3RhdGUoMCk7XG4gICAgY29uc3QgW2NvbHVtbnMsIGZsYXR0ZW5Db2x1bW5zLCBmbGF0dGVuU2Nyb2xsWF0gPSB1c2VDb2x1bW5zKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwcm9wcyksIGV4cGFuZGFibGVDb25maWcpLCB7IGV4cGFuZGFibGU6ICEhZXhwYW5kYWJsZUNvbmZpZy5leHBhbmRlZFJvd1JlbmRlciwgY29sdW1uVGl0bGU6IGV4cGFuZGFibGVDb25maWcuY29sdW1uVGl0bGUsIGV4cGFuZGVkS2V5czogbWVyZ2VkRXhwYW5kZWRLZXlzLCBnZXRSb3dLZXksXG4gICAgICAgIG9uVHJpZ2dlckV4cGFuZCwgZXhwYW5kSWNvbjogbWVyZ2VkRXhwYW5kSWNvbiwgZXhwYW5kSWNvbkNvbHVtbkluZGV4OiBleHBhbmRhYmxlQ29uZmlnLmV4cGFuZEljb25Db2x1bW5JbmRleCwgZGlyZWN0aW9uLCBzY3JvbGxXaWR0aDogdXNlSW50ZXJuYWxIb29rcyAmJiB0YWlsb3IgJiYgdHlwZW9mIHNjcm9sbFggPT09ICdudW1iZXInID8gc2Nyb2xsWCA6IG51bGwsIGNsaWVudFdpZHRoOiBjb21wb25lbnRXaWR0aCB9KSwgdXNlSW50ZXJuYWxIb29rcyA/IHRyYW5zZm9ybUNvbHVtbnMgOiBudWxsKTtcbiAgICBjb25zdCBtZXJnZWRTY3JvbGxYID0gZmxhdHRlblNjcm9sbFggIT09IG51bGwgJiYgZmxhdHRlblNjcm9sbFggIT09IHZvaWQgMCA/IGZsYXR0ZW5TY3JvbGxYIDogc2Nyb2xsWDtcbiAgICBjb25zdCBjb2x1bW5Db250ZXh0ID0gUmVhY3QudXNlTWVtbygoKSA9PiAoeyBjb2x1bW5zLCBmbGF0dGVuQ29sdW1ucyB9KSwgW2NvbHVtbnMsIGZsYXR0ZW5Db2x1bW5zXSk7XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT0gUmVmcyA9PT09PT09PT09PT09PT09PT09PT09PVxuICAgIGNvbnN0IGZ1bGxUYWJsZVJlZiA9IFJlYWN0LnVzZVJlZihudWxsKTtcbiAgICBjb25zdCBzY3JvbGxIZWFkZXJSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gICAgY29uc3Qgc2Nyb2xsQm9keVJlZiA9IFJlYWN0LnVzZVJlZihudWxsKTtcbiAgICBjb25zdCBzY3JvbGxCb2R5Q29udGFpbmVyUmVmID0gUmVhY3QudXNlUmVmKG51bGwpO1xuICAgIFJlYWN0LnVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuYXRpdmVFbGVtZW50OiBmdWxsVGFibGVSZWYuY3VycmVudCxcbiAgICAgICAgICAgIHNjcm9sbFRvOiBjb25maWcgPT4ge1xuICAgICAgICAgICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgICAgICAgICAgaWYgKHNjcm9sbEJvZHlSZWYuY3VycmVudCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIE5hdGl2ZSBzY3JvbGxcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBpbmRleCwgdG9wLCBrZXksIG9mZnNldCB9ID0gY29uZmlnO1xuICAgICAgICAgICAgICAgICAgICBpZiAodmFsaWROdW1iZXJWYWx1ZSh0b3ApKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJbiB0b3AgbW9kZSwgb2Zmc2V0IGlzIGlnbm9yZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIChfYSA9IHNjcm9sbEJvZHlSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnNjcm9sbFRvKHsgdG9wIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbWVyZ2VkS2V5ID0ga2V5ICE9PSBudWxsICYmIGtleSAhPT0gdm9pZCAwID8ga2V5IDogZ2V0Um93S2V5KG1lcmdlZERhdGFbaW5kZXhdKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBzY3JvbGxCb2R5UmVmLmN1cnJlbnQucXVlcnlTZWxlY3RvcihgW2RhdGEtcm93LWtleT1cIiR7bWVyZ2VkS2V5fVwiXWApO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRhcmdldEVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIW9mZnNldCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBObyBvZmZzZXQsIHVzZSBzY3JvbGxJbnRvVmlldyBmb3IgZGVmYXVsdCBiZWhhdmlvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRFbGVtZW50LnNjcm9sbEludG9WaWV3KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBXaXRoIG9mZnNldCwgdXNlIGVsZW1lbnQncyBvZmZzZXRUb3AgKyBvZmZzZXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudFRvcCA9IHRhcmdldEVsZW1lbnQub2Zmc2V0VG9wO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxCb2R5UmVmLmN1cnJlbnQuc2Nyb2xsVG8oeyB0b3A6IGVsZW1lbnRUb3AgKyBvZmZzZXQgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKChfYiA9IHNjcm9sbEJvZHlSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLnNjcm9sbFRvKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFBhc3MgdG8gcHJveHlcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsQm9keVJlZi5jdXJyZW50LnNjcm9sbFRvKGNvbmZpZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICB9KTtcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09IFNjcm9sbCA9PT09PT09PT09PT09PT09PT09PT09XG4gICAgY29uc3Qgc2Nyb2xsU3VtbWFyeVJlZiA9IFJlYWN0LnVzZVJlZihudWxsKTtcbiAgICBjb25zdCBbc2hhZG93U3RhcnQsIHNldFNoYWRvd1N0YXJ0XSA9IFJlYWN0LnVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbc2hhZG93RW5kLCBzZXRTaGFkb3dFbmRdID0gUmVhY3QudXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IFtjb2xzV2lkdGhzLCB1cGRhdGVDb2xzV2lkdGhzXSA9IFJlYWN0LnVzZVN0YXRlKG5ldyBNYXAoKSk7XG4gICAgLy8gQ29udmVydCBtYXAgdG8gbnVtYmVyIHdpZHRoXG4gICAgY29uc3QgY29sc0tleXMgPSBnZXRDb2x1bW5zS2V5KGZsYXR0ZW5Db2x1bW5zKTtcbiAgICBjb25zdCBwdXJlQ29sV2lkdGhzID0gY29sc0tleXMubWFwKGNvbHVtbktleSA9PiBjb2xzV2lkdGhzLmdldChjb2x1bW5LZXkpKTtcbiAgICBjb25zdCBjb2xXaWR0aHMgPSBSZWFjdC51c2VNZW1vKCgpID0+IHB1cmVDb2xXaWR0aHMsIFtwdXJlQ29sV2lkdGhzLmpvaW4oJ18nKV0pO1xuICAgIGNvbnN0IHN0aWNreU9mZnNldHMgPSB1c2VTdGlja3lPZmZzZXRzKGNvbFdpZHRocywgZmxhdHRlbkNvbHVtbnMpO1xuICAgIGNvbnN0IGZpeEhlYWRlciA9IHNjcm9sbCAmJiB2YWxpZGF0ZVZhbHVlKHNjcm9sbC55KTtcbiAgICBjb25zdCBob3Jpem9uU2Nyb2xsID0gKHNjcm9sbCAmJiB2YWxpZGF0ZVZhbHVlKG1lcmdlZFNjcm9sbFgpKSB8fCBCb29sZWFuKGV4cGFuZGFibGVDb25maWcuZml4ZWQpO1xuICAgIGNvbnN0IGZpeENvbHVtbiA9IGhvcml6b25TY3JvbGwgJiYgZmxhdHRlbkNvbHVtbnMuc29tZSgoeyBmaXhlZCB9KSA9PiBmaXhlZCk7XG4gICAgLy8gU3RpY2t5XG4gICAgY29uc3Qgc3RpY2t5UmVmID0gUmVhY3QudXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHsgaXNTdGlja3ksIG9mZnNldEhlYWRlciwgb2Zmc2V0U3VtbWFyeSwgb2Zmc2V0U2Nyb2xsLCBzdGlja3lDbGFzc05hbWUsIGNvbnRhaW5lciB9ID0gdXNlU3RpY2t5KHN0aWNreSwgcHJlZml4Q2xzKTtcbiAgICAvLyBGb290ZXIgKEZpeCBmb290ZXIgbXVzdCBmaXhlZCBoZWFkZXIpXG4gICAgY29uc3Qgc3VtbWFyeU5vZGUgPSBSZWFjdC51c2VNZW1vKCgpID0+IHN1bW1hcnkgPT09IG51bGwgfHwgc3VtbWFyeSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3VtbWFyeShtZXJnZWREYXRhKSwgW3N1bW1hcnksIG1lcmdlZERhdGFdKTtcbiAgICBjb25zdCBmaXhGb290ZXIgPSAoZml4SGVhZGVyIHx8IGlzU3RpY2t5KSAmJlxuICAgICAgICBSZWFjdC5pc1ZhbGlkRWxlbWVudChzdW1tYXJ5Tm9kZSkgJiZcbiAgICAgICAgc3VtbWFyeU5vZGUudHlwZSA9PT0gU3VtbWFyeSAmJlxuICAgICAgICBzdW1tYXJ5Tm9kZS5wcm9wcy5maXhlZDtcbiAgICAvLyBTY3JvbGxcbiAgICBsZXQgc2Nyb2xsWFN0eWxlO1xuICAgIGxldCBzY3JvbGxZU3R5bGU7XG4gICAgbGV0IHNjcm9sbFRhYmxlU3R5bGU7XG4gICAgaWYgKGZpeEhlYWRlcikge1xuICAgICAgICBzY3JvbGxZU3R5bGUgPSB7XG4gICAgICAgICAgICBvdmVyZmxvd1k6IGhhc0RhdGEgPyAnc2Nyb2xsJyA6ICdhdXRvJyxcbiAgICAgICAgICAgIG1heEhlaWdodDogc2Nyb2xsLnksXG4gICAgICAgIH07XG4gICAgfVxuICAgIGlmIChob3Jpem9uU2Nyb2xsKSB7XG4gICAgICAgIHNjcm9sbFhTdHlsZSA9IHsgb3ZlcmZsb3dYOiAnYXV0bycgfTtcbiAgICAgICAgLy8gV2hlbiBubyB2ZXJ0aWNhbCBzY3JvbGxiYXIsIHNob3VsZCBoaWRlIGl0XG4gICAgICAgIGlmICghZml4SGVhZGVyKSB7XG4gICAgICAgICAgICBzY3JvbGxZU3R5bGUgPSB7IG92ZXJmbG93WTogJ2hpZGRlbicgfTtcbiAgICAgICAgfVxuICAgICAgICBzY3JvbGxUYWJsZVN0eWxlID0ge1xuICAgICAgICAgICAgd2lkdGg6IG1lcmdlZFNjcm9sbFggPT09IHRydWUgPyAnYXV0bycgOiBtZXJnZWRTY3JvbGxYLFxuICAgICAgICAgICAgbWluV2lkdGg6ICcxMDAlJyxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgY29uc3Qgb25Db2x1bW5SZXNpemUgPSBSZWFjdC51c2VDYWxsYmFjaygoY29sdW1uS2V5LCB3aWR0aCkgPT4ge1xuICAgICAgICB1cGRhdGVDb2xzV2lkdGhzKHdpZHRocyA9PiB7XG4gICAgICAgICAgICBpZiAod2lkdGhzLmdldChjb2x1bW5LZXkpICE9PSB3aWR0aCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5ld1dpZHRocyA9IG5ldyBNYXAod2lkdGhzKTtcbiAgICAgICAgICAgICAgICBuZXdXaWR0aHMuc2V0KGNvbHVtbktleSwgd2lkdGgpO1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXdXaWR0aHM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gd2lkdGhzO1xuICAgICAgICB9KTtcbiAgICB9LCBbXSk7XG4gICAgY29uc3QgW3NldFNjcm9sbFRhcmdldCwgZ2V0U2Nyb2xsVGFyZ2V0XSA9IHVzZVRpbWVvdXRMb2NrKG51bGwpO1xuICAgIGZ1bmN0aW9uIGZvcmNlU2Nyb2xsKHNjcm9sbExlZnQsIHRhcmdldCkge1xuICAgICAgICBpZiAoIXRhcmdldCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgdGFyZ2V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICB0YXJnZXQoc2Nyb2xsTGVmdCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodGFyZ2V0LnNjcm9sbExlZnQgIT09IHNjcm9sbExlZnQpIHtcbiAgICAgICAgICAgIHRhcmdldC5zY3JvbGxMZWZ0ID0gc2Nyb2xsTGVmdDtcbiAgICAgICAgICAgIC8vIERlbGF5IHRvIGZvcmNlIHNjcm9sbCBwb3NpdGlvbiBpZiBub3Qgc3luY1xuICAgICAgICAgICAgaWYgKHRhcmdldC5zY3JvbGxMZWZ0ICE9PSBzY3JvbGxMZWZ0KSB7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldC5zY3JvbGxMZWZ0ID0gc2Nyb2xsTGVmdDtcbiAgICAgICAgICAgICAgICB9LCAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBbc2Nyb2xsSW5mbywgc2V0U2Nyb2xsSW5mb10gPSBSZWFjdC51c2VTdGF0ZShbMCwgMF0pO1xuICAgIGNvbnN0IG9uSW50ZXJuYWxTY3JvbGwgPSB1c2VFdmVudCgoeyBjdXJyZW50VGFyZ2V0LCBzY3JvbGxMZWZ0IH0pID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBjb25zdCBtZXJnZWRTY3JvbGxMZWZ0ID0gdHlwZW9mIHNjcm9sbExlZnQgPT09ICdudW1iZXInID8gc2Nyb2xsTGVmdCA6IGN1cnJlbnRUYXJnZXQuc2Nyb2xsTGVmdDtcbiAgICAgICAgY29uc3QgY29tcGFyZVRhcmdldCA9IGN1cnJlbnRUYXJnZXQgfHwgRU1QVFlfU0NST0xMX1RBUkdFVDtcbiAgICAgICAgaWYgKCFnZXRTY3JvbGxUYXJnZXQoKSB8fCBnZXRTY3JvbGxUYXJnZXQoKSA9PT0gY29tcGFyZVRhcmdldCkge1xuICAgICAgICAgICAgc2V0U2Nyb2xsVGFyZ2V0KGNvbXBhcmVUYXJnZXQpO1xuICAgICAgICAgICAgZm9yY2VTY3JvbGwobWVyZ2VkU2Nyb2xsTGVmdCwgc2Nyb2xsSGVhZGVyUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgZm9yY2VTY3JvbGwobWVyZ2VkU2Nyb2xsTGVmdCwgc2Nyb2xsQm9keVJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIGZvcmNlU2Nyb2xsKG1lcmdlZFNjcm9sbExlZnQsIHNjcm9sbFN1bW1hcnlSZWYuY3VycmVudCk7XG4gICAgICAgICAgICBmb3JjZVNjcm9sbChtZXJnZWRTY3JvbGxMZWZ0LCAoX2EgPSBzdGlja3lSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnNldFNjcm9sbExlZnQpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG1lYXN1cmVUYXJnZXQgPSBjdXJyZW50VGFyZ2V0IHx8IHNjcm9sbEhlYWRlclJlZi5jdXJyZW50O1xuICAgICAgICBpZiAobWVhc3VyZVRhcmdldCkge1xuICAgICAgICAgICAgY29uc3Qgc2Nyb2xsV2lkdGggPSBcbiAgICAgICAgICAgIC8vIFNob3VsZCB1c2UgbWVyZ2VkU2Nyb2xsWCBpbiB2aXJ0dWFsIHRhYmxlKHVzZUludGVybmFsSG9va3MgJiYgdGFpbG9yID09PSB0cnVlKVxuICAgICAgICAgICAgdXNlSW50ZXJuYWxIb29rcyAmJiB0YWlsb3IgJiYgdHlwZW9mIG1lcmdlZFNjcm9sbFggPT09ICdudW1iZXInXG4gICAgICAgICAgICAgICAgPyBtZXJnZWRTY3JvbGxYXG4gICAgICAgICAgICAgICAgOiBtZWFzdXJlVGFyZ2V0LnNjcm9sbFdpZHRoO1xuICAgICAgICAgICAgY29uc3QgY2xpZW50V2lkdGggPSBtZWFzdXJlVGFyZ2V0LmNsaWVudFdpZHRoO1xuICAgICAgICAgICAgY29uc3QgYWJzU2Nyb2xsU3RhcnQgPSBNYXRoLmFicyhtZXJnZWRTY3JvbGxMZWZ0KTtcbiAgICAgICAgICAgIHNldFNjcm9sbEluZm8ob3JpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBuZXh0U2Nyb2xsSW5mbyA9IFthYnNTY3JvbGxTdGFydCwgc2Nyb2xsV2lkdGggLSBjbGllbnRXaWR0aF07XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzRXF1YWwob3JpLCBuZXh0U2Nyb2xsSW5mbykgPyBvcmkgOiBuZXh0U2Nyb2xsSW5mbztcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gVGhlcmUgaXMgbm8gc3BhY2UgdG8gc2Nyb2xsXG4gICAgICAgICAgICBpZiAoc2Nyb2xsV2lkdGggPT09IGNsaWVudFdpZHRoKSB7XG4gICAgICAgICAgICAgICAgc2V0U2hhZG93U3RhcnQoZmFsc2UpO1xuICAgICAgICAgICAgICAgIHNldFNoYWRvd0VuZChmYWxzZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2V0U2hhZG93U3RhcnQoYWJzU2Nyb2xsU3RhcnQgPiAwKTtcbiAgICAgICAgICAgIHNldFNoYWRvd0VuZChhYnNTY3JvbGxTdGFydCA8IHNjcm9sbFdpZHRoIC0gY2xpZW50V2lkdGggLSAxKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IG9uQm9keVNjcm9sbCA9IHVzZUV2ZW50KChlKSA9PiB7XG4gICAgICAgIG9uSW50ZXJuYWxTY3JvbGwoZSk7XG4gICAgICAgIG9uU2Nyb2xsID09PSBudWxsIHx8IG9uU2Nyb2xsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvblNjcm9sbChlKTtcbiAgICB9KTtcbiAgICBjb25zdCB0cmlnZ2VyT25TY3JvbGwgPSAoKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgaWYgKGhvcml6b25TY3JvbGwgJiYgc2Nyb2xsQm9keVJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICBvbkludGVybmFsU2Nyb2xsKHtcbiAgICAgICAgICAgICAgICBjdXJyZW50VGFyZ2V0OiBnZXRET00oc2Nyb2xsQm9keVJlZi5jdXJyZW50KSxcbiAgICAgICAgICAgICAgICBzY3JvbGxMZWZ0OiAoX2EgPSBzY3JvbGxCb2R5UmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zY3JvbGxMZWZ0LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBzZXRTaGFkb3dTdGFydChmYWxzZSk7XG4gICAgICAgICAgICBzZXRTaGFkb3dFbmQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBjb25zdCBvbkZ1bGxUYWJsZVJlc2l6ZSA9IChvZmZzZXRXaWR0aCkgPT4ge1xuICAgICAgICB2YXIgX2EsIF9iLCBfYztcbiAgICAgICAgKF9hID0gc3RpY2t5UmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jaGVja1Njcm9sbEJhclZpc2libGUoKTtcbiAgICAgICAgbGV0IG1lcmdlZFdpZHRoID0gKF9jID0gb2Zmc2V0V2lkdGggIT09IG51bGwgJiYgb2Zmc2V0V2lkdGggIT09IHZvaWQgMCA/IG9mZnNldFdpZHRoIDogKF9iID0gZnVsbFRhYmxlUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5vZmZzZXRXaWR0aCkgIT09IG51bGwgJiYgX2MgIT09IHZvaWQgMCA/IF9jIDogMDtcbiAgICAgICAgaWYgKHVzZUludGVybmFsSG9va3MgJiYgZ2V0Q29udGFpbmVyV2lkdGggJiYgZnVsbFRhYmxlUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIG1lcmdlZFdpZHRoID0gZ2V0Q29udGFpbmVyV2lkdGgoZnVsbFRhYmxlUmVmLmN1cnJlbnQsIG1lcmdlZFdpZHRoKSB8fCBtZXJnZWRXaWR0aDtcbiAgICAgICAgfVxuICAgICAgICBpZiAobWVyZ2VkV2lkdGggIT09IGNvbXBvbmVudFdpZHRoKSB7XG4gICAgICAgICAgICB0cmlnZ2VyT25TY3JvbGwoKTtcbiAgICAgICAgICAgIHNldENvbXBvbmVudFdpZHRoKG1lcmdlZFdpZHRoKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKGhvcml6b25TY3JvbGwpIHtcbiAgICAgICAgICAgIG9uRnVsbFRhYmxlUmVzaXplKCk7XG4gICAgICAgIH1cbiAgICB9LCBbaG9yaXpvblNjcm9sbF0pO1xuICAgIC8vIFN5bmMgc2Nyb2xsIGJhciB3aGVuIGluaXQgb3IgYGhvcml6b25TY3JvbGxgLCBgZGF0YWAgYW5kIGBjb2x1bW5zLmxlbmd0aGAgY2hhbmdlZFxuICAgIGNvbnN0IG1vdW50ZWQgPSBSZWFjdC51c2VSZWYoZmFsc2UpO1xuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIC8vIG9uRnVsbFRhYmxlUmVzaXplIHdpbGwgYmUgdHJpZ2dlciBvbmNlIHdoZW4gUmVzaXplT2JzZXJ2ZXIgaXMgbW91bnRlZFxuICAgICAgICAvLyBUaGlzIHdpbGwgcmVkdWNlIG9uZSBkdXBsaWNhdGVkIHRyaWdnZXJPblNjcm9sbCB0aW1lXG4gICAgICAgIGlmIChtb3VudGVkLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIHRyaWdnZXJPblNjcm9sbCgpO1xuICAgICAgICB9XG4gICAgfSwgW2hvcml6b25TY3JvbGwsIGRhdGEsIGNvbHVtbnMubGVuZ3RoXSk7XG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgbW91bnRlZC5jdXJyZW50ID0gdHJ1ZTtcbiAgICB9LCBbXSk7XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09IEVmZmVjdHMgPT09PT09PT09PT09PT09PT09PT09PVxuICAgIGNvbnN0IFtzY3JvbGxiYXJTaXplLCBzZXRTY3JvbGxiYXJTaXplXSA9IFJlYWN0LnVzZVN0YXRlKDApO1xuICAgIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghdGFpbG9yIHx8ICF1c2VJbnRlcm5hbEhvb2tzKSB7XG4gICAgICAgICAgICBpZiAoc2Nyb2xsQm9keVJlZi5jdXJyZW50IGluc3RhbmNlb2YgRWxlbWVudCkge1xuICAgICAgICAgICAgICAgIHNldFNjcm9sbGJhclNpemUoZ2V0VGFyZ2V0U2Nyb2xsQmFyU2l6ZShzY3JvbGxCb2R5UmVmLmN1cnJlbnQpLndpZHRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHNldFNjcm9sbGJhclNpemUoZ2V0VGFyZ2V0U2Nyb2xsQmFyU2l6ZShzY3JvbGxCb2R5Q29udGFpbmVyUmVmLmN1cnJlbnQpLndpZHRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0sIFtdKTtcbiAgICAvLyA9PT09PT09PT09PT09PT09PT0gSU5URVJOQUwgSE9PS1MgPT09PT09PT09PT09PT09PT09XG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKHVzZUludGVybmFsSG9va3MgJiYgaW50ZXJuYWxSZWZzKSB7XG4gICAgICAgICAgICBpbnRlcm5hbFJlZnMuYm9keS5jdXJyZW50ID0gc2Nyb2xsQm9keVJlZi5jdXJyZW50O1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gPT0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVuZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID09XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PSBSZW5kZXI6IEZ1bmMgPT09PT09PT09PT09PT09PT09PVxuICAgIGNvbnN0IHJlbmRlckZpeGVkSGVhZGVyVGFibGUgPSBSZWFjdC51c2VDYWxsYmFjayhmaXhlZEhvbGRlclBhc3NQcm9wcyA9PiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbX2pzeChIZWFkZXIsIE9iamVjdC5hc3NpZ24oe30sIGZpeGVkSG9sZGVyUGFzc1Byb3BzKSksIGZpeEZvb3RlciA9PT0gJ3RvcCcgJiYgX2pzeChGb290ZXIsIE9iamVjdC5hc3NpZ24oe30sIGZpeGVkSG9sZGVyUGFzc1Byb3BzLCB7IGNoaWxkcmVuOiBzdW1tYXJ5Tm9kZSB9KSldIH0pKSwgW2ZpeEZvb3Rlciwgc3VtbWFyeU5vZGVdKTtcbiAgICBjb25zdCByZW5kZXJGaXhlZEZvb3RlclRhYmxlID0gUmVhY3QudXNlQ2FsbGJhY2soZml4ZWRIb2xkZXJQYXNzUHJvcHMgPT4gX2pzeChGb290ZXIsIE9iamVjdC5hc3NpZ24oe30sIGZpeGVkSG9sZGVyUGFzc1Byb3BzLCB7IGNoaWxkcmVuOiBzdW1tYXJ5Tm9kZSB9KSksIFtzdW1tYXJ5Tm9kZV0pO1xuICAgIC8vID09PT09PT09PT09PT09PT09PT0gUmVuZGVyOiBOb2RlID09PT09PT09PT09PT09PT09PT1cbiAgICBjb25zdCBUYWJsZUNvbXBvbmVudCA9IGdldENvbXBvbmVudChbJ3RhYmxlJ10sICd0YWJsZScpO1xuICAgIC8vIFRhYmxlIGxheW91dFxuICAgIGNvbnN0IG1lcmdlZFRhYmxlTGF5b3V0ID0gUmVhY3QudXNlTWVtbygoKSA9PiB7XG4gICAgICAgIGlmICh0YWJsZUxheW91dCkge1xuICAgICAgICAgICAgcmV0dXJuIHRhYmxlTGF5b3V0O1xuICAgICAgICB9XG4gICAgICAgIC8vIFdoZW4gc2Nyb2xsLnggaXMgbWF4LWNvbnRlbnQsIG5vIG5lZWQgdG8gZml4IHRhYmxlIGxheW91dFxuICAgICAgICAvLyBpdCdzIHdpZHRoIHNob3VsZCBzdHJldGNoIG91dCB0byBmaXQgY29udGVudFxuICAgICAgICBpZiAoZml4Q29sdW1uKSB7XG4gICAgICAgICAgICByZXR1cm4gbWVyZ2VkU2Nyb2xsWCA9PT0gJ21heC1jb250ZW50JyA/ICdhdXRvJyA6ICdmaXhlZCc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGZpeEhlYWRlciB8fCBpc1N0aWNreSB8fCBmbGF0dGVuQ29sdW1ucy5zb21lKCh7IGVsbGlwc2lzIH0pID0+IGVsbGlwc2lzKSkge1xuICAgICAgICAgICAgcmV0dXJuICdmaXhlZCc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICdhdXRvJztcbiAgICB9LCBbZml4SGVhZGVyLCBmaXhDb2x1bW4sIGZsYXR0ZW5Db2x1bW5zLCB0YWJsZUxheW91dCwgaXNTdGlja3ldKTtcbiAgICBsZXQgZ3JvdXBUYWJsZU5vZGU7XG4gICAgLy8gSGVhZGVyIHByb3BzXG4gICAgY29uc3QgaGVhZGVyUHJvcHMgPSB7XG4gICAgICAgIGNvbFdpZHRocyxcbiAgICAgICAgY29sdW1Db3VudDogZmxhdHRlbkNvbHVtbnMubGVuZ3RoLFxuICAgICAgICBzdGlja3lPZmZzZXRzLFxuICAgICAgICBvbkhlYWRlclJvdyxcbiAgICAgICAgZml4SGVhZGVyLFxuICAgICAgICBzY3JvbGwsXG4gICAgfTtcbiAgICAvLyBFbXB0eVxuICAgIGNvbnN0IGVtcHR5Tm9kZSA9IFJlYWN0LnVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBpZiAoaGFzRGF0YSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBlbXB0eVRleHQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHJldHVybiBlbXB0eVRleHQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZW1wdHlUZXh0O1xuICAgIH0sIFtoYXNEYXRhLCBlbXB0eVRleHRdKTtcbiAgICAvLyBCb2R5XG4gICAgY29uc3QgYm9keVRhYmxlID0gKF9qc3goQm9keSwgeyBkYXRhOiBtZXJnZWREYXRhLCBtZWFzdXJlQ29sdW1uV2lkdGg6IGZpeEhlYWRlciB8fCBob3Jpem9uU2Nyb2xsIHx8IGlzU3RpY2t5IH0pKTtcbiAgICBjb25zdCBib2R5Q29sR3JvdXAgPSAoX2pzeChDb2xHcm91cCwgeyBjb2xXaWR0aHM6IGZsYXR0ZW5Db2x1bW5zLm1hcCgoeyB3aWR0aCB9KSA9PiB3aWR0aCksIGNvbHVtbnM6IGZsYXR0ZW5Db2x1bW5zIH0pKTtcbiAgICBjb25zdCBjYXB0aW9uRWxlbWVudCA9IGNhcHRpb24gIT09IG51bGwgJiYgY2FwdGlvbiAhPT0gdW5kZWZpbmVkID8gKF9qc3goXCJjYXB0aW9uXCIsIHsgY2xhc3NOYW1lOiBgJHtwcmVmaXhDbHN9LWNhcHRpb25gLCBjaGlsZHJlbjogY2FwdGlvbiB9KSkgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgZGF0YVByb3BzID0gcGlja0F0dHJzKHByb3BzLCB7IGRhdGE6IHRydWUgfSk7XG4gICAgY29uc3QgYXJpYVByb3BzID0gcGlja0F0dHJzKHByb3BzLCB7IGFyaWE6IHRydWUgfSk7XG4gICAgaWYgKGZpeEhlYWRlciB8fCBpc1N0aWNreSkge1xuICAgICAgICAvLyA+Pj4+Pj4gRml4ZWQgSGVhZGVyXG4gICAgICAgIGxldCBib2R5Q29udGVudDtcbiAgICAgICAgaWYgKHR5cGVvZiBjdXN0b21pemVTY3JvbGxCb2R5ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBib2R5Q29udGVudCA9IGN1c3RvbWl6ZVNjcm9sbEJvZHkobWVyZ2VkRGF0YSwge1xuICAgICAgICAgICAgICAgIHNjcm9sbGJhclNpemUsXG4gICAgICAgICAgICAgICAgcmVmOiBzY3JvbGxCb2R5UmVmLFxuICAgICAgICAgICAgICAgIG9uU2Nyb2xsOiBvbkludGVybmFsU2Nyb2xsLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBoZWFkZXJQcm9wcy5jb2xXaWR0aHMgPSBmbGF0dGVuQ29sdW1ucy5tYXAoKHsgd2lkdGggfSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb2xXaWR0aCA9IGluZGV4ID09PSBmbGF0dGVuQ29sdW1ucy5sZW5ndGggLSAxID8gd2lkdGggLSBzY3JvbGxiYXJTaXplIDogd2lkdGg7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjb2xXaWR0aCA9PT0gJ251bWJlcicgJiYgIU51bWJlci5pc05hTihjb2xXaWR0aCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbFdpZHRoO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICB3YXJuaW5nKHByb3BzLmNvbHVtbnMubGVuZ3RoID09PSAwLCAnV2hlbiB1c2UgYGNvbXBvbmVudHMuYm9keWAgd2l0aCByZW5kZXIgcHJvcHMuIEVhY2ggY29sdW1uIHNob3VsZCBoYXZlIGEgZml4ZWQgYHdpZHRoYCB2YWx1ZS4nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGJvZHlDb250ZW50ID0gKF9qc3goXCJkaXZcIiwgeyBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBzY3JvbGxYU3R5bGUpLCBzY3JvbGxZU3R5bGUpLCBvblNjcm9sbDogb25Cb2R5U2Nyb2xsLCByZWY6IHNjcm9sbEJvZHlSZWYsIGNsYXNzTmFtZTogYCR7cHJlZml4Q2xzfS1ib2R5YCwgY2hpbGRyZW46IF9qc3hzKFRhYmxlQ29tcG9uZW50LCBPYmplY3QuYXNzaWduKHsgc3R5bGU6IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgc2Nyb2xsVGFibGVTdHlsZSksIHsgdGFibGVMYXlvdXQ6IG1lcmdlZFRhYmxlTGF5b3V0IH0pIH0sIGFyaWFQcm9wcywgeyBjaGlsZHJlbjogW2NhcHRpb25FbGVtZW50LCBib2R5Q29sR3JvdXAsIGJvZHlUYWJsZSwgIWZpeEZvb3RlciAmJiBzdW1tYXJ5Tm9kZSAmJiAoX2pzeChGb290ZXIsIHsgc3RpY2t5T2Zmc2V0czogc3RpY2t5T2Zmc2V0cywgZmxhdHRlbkNvbHVtbnM6IGZsYXR0ZW5Db2x1bW5zLCBjaGlsZHJlbjogc3VtbWFyeU5vZGUgfSkpXSB9KSkgfSkpO1xuICAgICAgICB9XG4gICAgICAgIC8vIEZpeGVkIGhvbGRlciBzaGFyZSB0aGUgcHJvcHNcbiAgICAgICAgY29uc3QgZml4ZWRIb2xkZXJQcm9wcyA9IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHsgbm9EYXRhOiAhbWVyZ2VkRGF0YS5sZW5ndGgsIG1heENvbnRlbnRTY3JvbGw6IGhvcml6b25TY3JvbGwgJiYgbWVyZ2VkU2Nyb2xsWCA9PT0gJ21heC1jb250ZW50JyB9LCBoZWFkZXJQcm9wcyksIGNvbHVtbkNvbnRleHQpLCB7IGRpcmVjdGlvbixcbiAgICAgICAgICAgIHN0aWNreUNsYXNzTmFtZSwgc2Nyb2xsWDogbWVyZ2VkU2Nyb2xsWCwgdGFibGVMYXlvdXQ6IG1lcmdlZFRhYmxlTGF5b3V0LCBvblNjcm9sbDogb25JbnRlcm5hbFNjcm9sbCB9KTtcbiAgICAgICAgZ3JvdXBUYWJsZU5vZGUgPSAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbc2hvd0hlYWRlciAhPT0gZmFsc2UgJiYgKF9qc3goRml4ZWRIb2xkZXIsIE9iamVjdC5hc3NpZ24oe30sIGZpeGVkSG9sZGVyUHJvcHMsIHsgc3RpY2t5VG9wT2Zmc2V0OiBvZmZzZXRIZWFkZXIsIGNsYXNzTmFtZTogYCR7cHJlZml4Q2xzfS1oZWFkZXJgLCByZWY6IHNjcm9sbEhlYWRlclJlZiwgY29sR3JvdXA6IGJvZHlDb2xHcm91cCwgY2hpbGRyZW46IHJlbmRlckZpeGVkSGVhZGVyVGFibGUgfSkpKSwgYm9keUNvbnRlbnQsIGZpeEZvb3RlciAmJiBmaXhGb290ZXIgIT09ICd0b3AnICYmIChfanN4KEZpeGVkSG9sZGVyLCBPYmplY3QuYXNzaWduKHt9LCBmaXhlZEhvbGRlclByb3BzLCB7IHN0aWNreUJvdHRvbU9mZnNldDogb2Zmc2V0U3VtbWFyeSwgY2xhc3NOYW1lOiBgJHtwcmVmaXhDbHN9LXN1bW1hcnlgLCByZWY6IHNjcm9sbFN1bW1hcnlSZWYsIGNvbEdyb3VwOiBib2R5Q29sR3JvdXAsIGNoaWxkcmVuOiByZW5kZXJGaXhlZEZvb3RlclRhYmxlIH0pKSksIGlzU3RpY2t5ICYmIHNjcm9sbEJvZHlSZWYuY3VycmVudCAmJiBzY3JvbGxCb2R5UmVmLmN1cnJlbnQgaW5zdGFuY2VvZiBFbGVtZW50ICYmIChfanN4KFN0aWNreVNjcm9sbEJhciwgeyByZWY6IHN0aWNreVJlZiwgb2Zmc2V0U2Nyb2xsOiBvZmZzZXRTY3JvbGwsIHNjcm9sbEJvZHlSZWY6IHNjcm9sbEJvZHlSZWYsIG9uU2Nyb2xsOiBvbkludGVybmFsU2Nyb2xsLCBjb250YWluZXI6IGNvbnRhaW5lciwgZGlyZWN0aW9uOiBkaXJlY3Rpb24gfSkpXSB9KSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICAvLyA+Pj4+Pj4gVW5pcXVlIHRhYmxlXG4gICAgICAgIGdyb3VwVGFibGVOb2RlID0gKF9qc3goXCJkaXZcIiwgeyBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHNjcm9sbFhTdHlsZSksIHNjcm9sbFlTdHlsZSksIHN0eWxlcyA9PT0gbnVsbCB8fCBzdHlsZXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN0eWxlcy5jb250ZW50KSwgY2xhc3NOYW1lOiBjbHN4KGAke3ByZWZpeENsc30tY29udGVudGAsIGNsYXNzTmFtZXMgPT09IG51bGwgfHwgY2xhc3NOYW1lcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xhc3NOYW1lcy5jb250ZW50KSwgb25TY3JvbGw6IG9uSW50ZXJuYWxTY3JvbGwsIHJlZjogc2Nyb2xsQm9keVJlZiwgY2hpbGRyZW46IF9qc3hzKFRhYmxlQ29tcG9uZW50LCBPYmplY3QuYXNzaWduKHsgc3R5bGU6IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgc2Nyb2xsVGFibGVTdHlsZSksIHsgdGFibGVMYXlvdXQ6IG1lcmdlZFRhYmxlTGF5b3V0IH0pIH0sIGFyaWFQcm9wcywgeyBjaGlsZHJlbjogW2NhcHRpb25FbGVtZW50LCBib2R5Q29sR3JvdXAsIHNob3dIZWFkZXIgIT09IGZhbHNlICYmIF9qc3goSGVhZGVyLCBPYmplY3QuYXNzaWduKHt9LCBoZWFkZXJQcm9wcywgY29sdW1uQ29udGV4dCkpLCBib2R5VGFibGUsIHN1bW1hcnlOb2RlICYmIChfanN4KEZvb3RlciwgeyBzdGlja3lPZmZzZXRzOiBzdGlja3lPZmZzZXRzLCBmbGF0dGVuQ29sdW1uczogZmxhdHRlbkNvbHVtbnMsIGNoaWxkcmVuOiBzdW1tYXJ5Tm9kZSB9KSldIH0pKSB9KSk7XG4gICAgfVxuICAgIGNvbnN0IHRhYmxlU3R5bGUgPSBPYmplY3QuYXNzaWduKHt9LCBzdHlsZSk7XG4gICAgLy8gQWRkIGNzcyB2YXIgZm9yIHN0aWNreSBoZWFkZXIgYHpJbmRleGAgY2FsY1xuICAgIGlmIChpc1N0aWNreSkge1xuICAgICAgICB0YWJsZVN0eWxlWyctLWNvbHVtbnMtY291bnQnXSA9IGZsYXR0ZW5Db2x1bW5zLmxlbmd0aDtcbiAgICB9XG4gICAgbGV0IGZ1bGxUYWJsZSA9IChfanN4cyhcImRpdlwiLCBPYmplY3QuYXNzaWduKHsgY2xhc3NOYW1lOiBjbHN4KHByZWZpeENscywgY2xhc3NOYW1lLCB7XG4gICAgICAgICAgICBbYCR7cHJlZml4Q2xzfS1ydGxgXTogZGlyZWN0aW9uID09PSAncnRsJyxcbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LWZpeC1zdGFydC1zaGFkb3dgXTogaG9yaXpvblNjcm9sbCxcbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LWZpeC1lbmQtc2hhZG93YF06IGhvcml6b25TY3JvbGwsXG4gICAgICAgICAgICBbYCR7cHJlZml4Q2xzfS1maXgtc3RhcnQtc2hhZG93LXNob3dgXTogaG9yaXpvblNjcm9sbCAmJiBzaGFkb3dTdGFydCxcbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LWZpeC1lbmQtc2hhZG93LXNob3dgXTogaG9yaXpvblNjcm9sbCAmJiBzaGFkb3dFbmQsXG4gICAgICAgICAgICBbYCR7cHJlZml4Q2xzfS1sYXlvdXQtZml4ZWRgXTogdGFibGVMYXlvdXQgPT09ICdmaXhlZCcsXG4gICAgICAgICAgICBbYCR7cHJlZml4Q2xzfS1maXhlZC1oZWFkZXJgXTogZml4SGVhZGVyLFxuICAgICAgICAgICAgLyoqIE5vIHVzZWQgYnV0IGZvciBjb21wYXRpYmxlICovXG4gICAgICAgICAgICBbYCR7cHJlZml4Q2xzfS1maXhlZC1jb2x1bW5gXTogZml4Q29sdW1uLFxuICAgICAgICAgICAgW2Ake3ByZWZpeENsc30tc2Nyb2xsLWhvcml6b250YWxgXTogaG9yaXpvblNjcm9sbCxcbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LWhhcy1maXgtc3RhcnRgXTogKF9hID0gZmxhdHRlbkNvbHVtbnNbMF0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5maXhlZCxcbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LWhhcy1maXgtZW5kYF06ICgoX2IgPSBmbGF0dGVuQ29sdW1uc1tmbGF0dGVuQ29sdW1ucy5sZW5ndGggLSAxXSkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmZpeGVkKSA9PT0gJ2VuZCcsXG4gICAgICAgIH0pLCBzdHlsZTogdGFibGVTdHlsZSwgaWQ6IGlkLCByZWY6IGZ1bGxUYWJsZVJlZiB9LCBkYXRhUHJvcHMsIHsgY2hpbGRyZW46IFt0aXRsZSAmJiAoX2pzeChQYW5lbCwgeyBjbGFzc05hbWU6IGNsc3goYCR7cHJlZml4Q2xzfS10aXRsZWAsIGNsYXNzTmFtZXMgPT09IG51bGwgfHwgY2xhc3NOYW1lcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xhc3NOYW1lcy50aXRsZSksIHN0eWxlOiBzdHlsZXMgPT09IG51bGwgfHwgc3R5bGVzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdHlsZXMudGl0bGUsIGNoaWxkcmVuOiB0aXRsZShtZXJnZWREYXRhKSB9KSksIF9qc3goXCJkaXZcIiwgeyByZWY6IHNjcm9sbEJvZHlDb250YWluZXJSZWYsIGNsYXNzTmFtZTogY2xzeChgJHtwcmVmaXhDbHN9LWNvbnRhaW5lcmAsIGNsYXNzTmFtZXMgPT09IG51bGwgfHwgY2xhc3NOYW1lcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xhc3NOYW1lcy5zZWN0aW9uKSwgc3R5bGU6IHN0eWxlcyA9PT0gbnVsbCB8fCBzdHlsZXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN0eWxlcy5zZWN0aW9uLCBjaGlsZHJlbjogZ3JvdXBUYWJsZU5vZGUgfSksIGZvb3RlciAmJiAoX2pzeChQYW5lbCwgeyBjbGFzc05hbWU6IGNsc3goYCR7cHJlZml4Q2xzfS1mb290ZXJgLCBjbGFzc05hbWVzID09PSBudWxsIHx8IGNsYXNzTmFtZXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNsYXNzTmFtZXMuZm9vdGVyKSwgc3R5bGU6IHN0eWxlcyA9PT0gbnVsbCB8fCBzdHlsZXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN0eWxlcy5mb290ZXIsIGNoaWxkcmVuOiBmb290ZXIobWVyZ2VkRGF0YSkgfSkpXSB9KSkpO1xuICAgIGlmIChob3Jpem9uU2Nyb2xsKSB7XG4gICAgICAgIGZ1bGxUYWJsZSA9IChfanN4KFJlc2l6ZU9ic2VydmVyLCB7IG9uUmVzaXplOiAoeyBvZmZzZXRXaWR0aCB9KSA9PiBvbkZ1bGxUYWJsZVJlc2l6ZShvZmZzZXRXaWR0aCksIGNoaWxkcmVuOiBmdWxsVGFibGUgfSkpO1xuICAgIH1cbiAgICBjb25zdCBmaXhlZEluZm9MaXN0ID0gdXNlRml4ZWRJbmZvKGZsYXR0ZW5Db2x1bW5zLCBzdGlja3lPZmZzZXRzKTtcbiAgICBjb25zdCBUYWJsZUNvbnRleHRWYWx1ZSA9IFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICAgICAgLy8gU2Nyb2xsXG4gICAgICAgIHNjcm9sbFg6IG1lcmdlZFNjcm9sbFgsXG4gICAgICAgIHNjcm9sbEluZm8sXG4gICAgICAgIGNsYXNzTmFtZXMsXG4gICAgICAgIHN0eWxlcyxcbiAgICAgICAgLy8gVGFibGVcbiAgICAgICAgcHJlZml4Q2xzLFxuICAgICAgICBnZXRDb21wb25lbnQsXG4gICAgICAgIHNjcm9sbGJhclNpemUsXG4gICAgICAgIGRpcmVjdGlvbixcbiAgICAgICAgZml4ZWRJbmZvTGlzdCxcbiAgICAgICAgaXNTdGlja3ksXG4gICAgICAgIGNvbXBvbmVudFdpZHRoLFxuICAgICAgICBmaXhIZWFkZXIsXG4gICAgICAgIGZpeENvbHVtbixcbiAgICAgICAgaG9yaXpvblNjcm9sbCxcbiAgICAgICAgLy8gQm9keVxuICAgICAgICB0YWJsZUxheW91dDogbWVyZ2VkVGFibGVMYXlvdXQsXG4gICAgICAgIHJvd0NsYXNzTmFtZSxcbiAgICAgICAgZXhwYW5kZWRSb3dDbGFzc05hbWU6IGV4cGFuZGFibGVDb25maWcuZXhwYW5kZWRSb3dDbGFzc05hbWUsXG4gICAgICAgIGV4cGFuZEljb246IG1lcmdlZEV4cGFuZEljb24sXG4gICAgICAgIGV4cGFuZGFibGVUeXBlLFxuICAgICAgICBleHBhbmRSb3dCeUNsaWNrOiBleHBhbmRhYmxlQ29uZmlnLmV4cGFuZFJvd0J5Q2xpY2ssXG4gICAgICAgIGV4cGFuZGVkUm93UmVuZGVyOiBleHBhbmRhYmxlQ29uZmlnLmV4cGFuZGVkUm93UmVuZGVyLFxuICAgICAgICBleHBhbmRlZFJvd09mZnNldDogZXhwYW5kYWJsZUNvbmZpZy5leHBhbmRlZFJvd09mZnNldCxcbiAgICAgICAgb25UcmlnZ2VyRXhwYW5kLFxuICAgICAgICBleHBhbmRJY29uQ29sdW1uSW5kZXg6IGV4cGFuZGFibGVDb25maWcuZXhwYW5kSWNvbkNvbHVtbkluZGV4LFxuICAgICAgICBpbmRlbnRTaXplOiBleHBhbmRhYmxlQ29uZmlnLmluZGVudFNpemUsXG4gICAgICAgIGFsbENvbHVtbnNGaXhlZExlZnQ6IGZsYXR0ZW5Db2x1bW5zLmV2ZXJ5KGNvbCA9PiBjb2wuZml4ZWQgPT09ICdzdGFydCcpLFxuICAgICAgICBlbXB0eU5vZGUsXG4gICAgICAgIC8vIENvbHVtblxuICAgICAgICBjb2x1bW5zLFxuICAgICAgICBmbGF0dGVuQ29sdW1ucyxcbiAgICAgICAgb25Db2x1bW5SZXNpemUsXG4gICAgICAgIGNvbFdpZHRocyxcbiAgICAgICAgLy8gUm93XG4gICAgICAgIGhvdmVyU3RhcnRSb3c6IHN0YXJ0Um93LFxuICAgICAgICBob3ZlckVuZFJvdzogZW5kUm93LFxuICAgICAgICBvbkhvdmVyLFxuICAgICAgICByb3dFeHBhbmRhYmxlOiBleHBhbmRhYmxlQ29uZmlnLnJvd0V4cGFuZGFibGUsXG4gICAgICAgIG9uUm93LFxuICAgICAgICBnZXRSb3dLZXksXG4gICAgICAgIGV4cGFuZGVkS2V5czogbWVyZ2VkRXhwYW5kZWRLZXlzLFxuICAgICAgICBjaGlsZHJlbkNvbHVtbk5hbWU6IG1lcmdlZENoaWxkcmVuQ29sdW1uTmFtZSxcbiAgICAgICAgcm93SG92ZXJhYmxlLFxuICAgICAgICAvLyBNZWFzdXJlIFJvd1xuICAgICAgICBtZWFzdXJlUm93UmVuZGVyLFxuICAgIH0pLCBbXG4gICAgICAgIC8vIFNjcm9sbFxuICAgICAgICBtZXJnZWRTY3JvbGxYLFxuICAgICAgICBzY3JvbGxJbmZvLFxuICAgICAgICBjbGFzc05hbWVzLFxuICAgICAgICBzdHlsZXMsXG4gICAgICAgIC8vIFRhYmxlXG4gICAgICAgIHByZWZpeENscyxcbiAgICAgICAgZ2V0Q29tcG9uZW50LFxuICAgICAgICBzY3JvbGxiYXJTaXplLFxuICAgICAgICBkaXJlY3Rpb24sXG4gICAgICAgIGZpeGVkSW5mb0xpc3QsXG4gICAgICAgIGlzU3RpY2t5LFxuICAgICAgICBjb21wb25lbnRXaWR0aCxcbiAgICAgICAgZml4SGVhZGVyLFxuICAgICAgICBmaXhDb2x1bW4sXG4gICAgICAgIGhvcml6b25TY3JvbGwsXG4gICAgICAgIC8vIEJvZHlcbiAgICAgICAgbWVyZ2VkVGFibGVMYXlvdXQsXG4gICAgICAgIHJvd0NsYXNzTmFtZSxcbiAgICAgICAgZXhwYW5kYWJsZUNvbmZpZy5leHBhbmRlZFJvd0NsYXNzTmFtZSxcbiAgICAgICAgbWVyZ2VkRXhwYW5kSWNvbixcbiAgICAgICAgZXhwYW5kYWJsZVR5cGUsXG4gICAgICAgIGV4cGFuZGFibGVDb25maWcuZXhwYW5kUm93QnlDbGljayxcbiAgICAgICAgZXhwYW5kYWJsZUNvbmZpZy5leHBhbmRlZFJvd1JlbmRlcixcbiAgICAgICAgZXhwYW5kYWJsZUNvbmZpZy5leHBhbmRlZFJvd09mZnNldCxcbiAgICAgICAgb25UcmlnZ2VyRXhwYW5kLFxuICAgICAgICBleHBhbmRhYmxlQ29uZmlnLmV4cGFuZEljb25Db2x1bW5JbmRleCxcbiAgICAgICAgZXhwYW5kYWJsZUNvbmZpZy5pbmRlbnRTaXplLFxuICAgICAgICBlbXB0eU5vZGUsXG4gICAgICAgIC8vIENvbHVtblxuICAgICAgICBjb2x1bW5zLFxuICAgICAgICBmbGF0dGVuQ29sdW1ucyxcbiAgICAgICAgb25Db2x1bW5SZXNpemUsXG4gICAgICAgIGNvbFdpZHRocyxcbiAgICAgICAgLy8gUm93XG4gICAgICAgIHN0YXJ0Um93LFxuICAgICAgICBlbmRSb3csXG4gICAgICAgIG9uSG92ZXIsXG4gICAgICAgIGV4cGFuZGFibGVDb25maWcucm93RXhwYW5kYWJsZSxcbiAgICAgICAgb25Sb3csXG4gICAgICAgIGdldFJvd0tleSxcbiAgICAgICAgbWVyZ2VkRXhwYW5kZWRLZXlzLFxuICAgICAgICBtZXJnZWRDaGlsZHJlbkNvbHVtbk5hbWUsXG4gICAgICAgIHJvd0hvdmVyYWJsZSxcbiAgICAgICAgbWVhc3VyZVJvd1JlbmRlcixcbiAgICBdKTtcbiAgICByZXR1cm4gX2pzeChUYWJsZUNvbnRleHQuUHJvdmlkZXIsIHsgdmFsdWU6IFRhYmxlQ29udGV4dFZhbHVlLCBjaGlsZHJlbjogZnVsbFRhYmxlIH0pO1xufTtcbmNvbnN0IFJlZlRhYmxlID0gUmVhY3QuZm9yd2FyZFJlZihUYWJsZSk7XG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIFJlZlRhYmxlLmRpc3BsYXlOYW1lID0gJ1RhYmxlJztcbn1cbmV4cG9ydCBjb25zdCBnZW5UYWJsZSA9IChzaG91bGRUcmlnZ2VyUmVuZGVyKSA9PiB7XG4gICAgcmV0dXJuIG1ha2VJbW11dGFibGUoUmVmVGFibGUsIHNob3VsZFRyaWdnZXJSZW5kZXIpO1xufTtcbmNvbnN0IEltbXV0YWJsZVRhYmxlID0gZ2VuVGFibGUoKTtcbkltbXV0YWJsZVRhYmxlLkVYUEFORF9DT0xVTU4gPSBFWFBBTkRfQ09MVU1OO1xuSW1tdXRhYmxlVGFibGUuSU5URVJOQUxfSE9PS1MgPSBJTlRFUk5BTF9IT09LUztcbkltbXV0YWJsZVRhYmxlLkNvbHVtbiA9IENvbHVtbjtcbkltbXV0YWJsZVRhYmxlLkNvbHVtbkdyb3VwID0gQ29sdW1uR3JvdXA7XG5JbW11dGFibGVUYWJsZS5TdW1tYXJ5ID0gRm9vdGVyQ29tcG9uZW50cztcbmV4cG9ydCBkZWZhdWx0IEltbXV0YWJsZVRhYmxlOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==