@endora-commerce/mod-catalog 0.100.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (443) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +63 -0
  3. package/dist/admin/components/PackagingUnitsEditor.d.ts +12 -0
  4. package/dist/admin/components/PackagingUnitsEditor.d.ts.map +1 -0
  5. package/dist/admin/components/PackagingUnitsEditor.js +99 -0
  6. package/dist/admin/components/PackagingUnitsEditor.js.map +1 -0
  7. package/dist/admin/components/ProductAttributesTab.d.ts +13 -0
  8. package/dist/admin/components/ProductAttributesTab.d.ts.map +1 -0
  9. package/dist/admin/components/ProductAttributesTab.js +140 -0
  10. package/dist/admin/components/ProductAttributesTab.js.map +1 -0
  11. package/dist/admin/components/ProductInventoryTab.d.ts +14 -0
  12. package/dist/admin/components/ProductInventoryTab.d.ts.map +1 -0
  13. package/dist/admin/components/ProductInventoryTab.js +284 -0
  14. package/dist/admin/components/ProductInventoryTab.js.map +1 -0
  15. package/dist/admin/components/ProductScopeEditor.d.ts +94 -0
  16. package/dist/admin/components/ProductScopeEditor.d.ts.map +1 -0
  17. package/dist/admin/components/ProductScopeEditor.js +395 -0
  18. package/dist/admin/components/ProductScopeEditor.js.map +1 -0
  19. package/dist/admin/components/ProductsBulkEditDialog.d.ts +11 -0
  20. package/dist/admin/components/ProductsBulkEditDialog.d.ts.map +1 -0
  21. package/dist/admin/components/ProductsBulkEditDialog.js +304 -0
  22. package/dist/admin/components/ProductsBulkEditDialog.js.map +1 -0
  23. package/dist/admin/index.d.ts +45 -0
  24. package/dist/admin/index.d.ts.map +1 -0
  25. package/dist/admin/index.js +184 -0
  26. package/dist/admin/index.js.map +1 -0
  27. package/dist/admin/lib/resolve-product-selection.d.ts +21 -0
  28. package/dist/admin/lib/resolve-product-selection.d.ts.map +1 -0
  29. package/dist/admin/lib/resolve-product-selection.js +25 -0
  30. package/dist/admin/lib/resolve-product-selection.js.map +1 -0
  31. package/dist/admin/pages/AttachmentTypesPage.d.ts +18 -0
  32. package/dist/admin/pages/AttachmentTypesPage.d.ts.map +1 -0
  33. package/dist/admin/pages/AttachmentTypesPage.js +92 -0
  34. package/dist/admin/pages/AttachmentTypesPage.js.map +1 -0
  35. package/dist/admin/pages/AttributeSetsPage.d.ts +21 -0
  36. package/dist/admin/pages/AttributeSetsPage.d.ts.map +1 -0
  37. package/dist/admin/pages/AttributeSetsPage.js +158 -0
  38. package/dist/admin/pages/AttributeSetsPage.js.map +1 -0
  39. package/dist/admin/pages/AttributesManager.d.ts +9 -0
  40. package/dist/admin/pages/AttributesManager.d.ts.map +1 -0
  41. package/dist/admin/pages/AttributesManager.js +305 -0
  42. package/dist/admin/pages/AttributesManager.js.map +1 -0
  43. package/dist/admin/pages/BulkOperationDetailPage.d.ts +9 -0
  44. package/dist/admin/pages/BulkOperationDetailPage.d.ts.map +1 -0
  45. package/dist/admin/pages/BulkOperationDetailPage.js +187 -0
  46. package/dist/admin/pages/BulkOperationDetailPage.js.map +1 -0
  47. package/dist/admin/pages/BulkOperationsPage.d.ts +9 -0
  48. package/dist/admin/pages/BulkOperationsPage.d.ts.map +1 -0
  49. package/dist/admin/pages/BulkOperationsPage.js +98 -0
  50. package/dist/admin/pages/BulkOperationsPage.js.map +1 -0
  51. package/dist/admin/pages/CategoriesTree.d.ts +9 -0
  52. package/dist/admin/pages/CategoriesTree.d.ts.map +1 -0
  53. package/dist/admin/pages/CategoriesTree.js +176 -0
  54. package/dist/admin/pages/CategoriesTree.js.map +1 -0
  55. package/dist/admin/pages/ProductEditor.d.ts +13 -0
  56. package/dist/admin/pages/ProductEditor.d.ts.map +1 -0
  57. package/dist/admin/pages/ProductEditor.js +1050 -0
  58. package/dist/admin/pages/ProductEditor.js.map +1 -0
  59. package/dist/admin/pages/ProductsList.d.ts +9 -0
  60. package/dist/admin/pages/ProductsList.d.ts.map +1 -0
  61. package/dist/admin/pages/ProductsList.js +399 -0
  62. package/dist/admin/pages/ProductsList.js.map +1 -0
  63. package/dist/backend/commands/attribute-commands.d.ts +111 -0
  64. package/dist/backend/commands/attribute-commands.d.ts.map +1 -0
  65. package/dist/backend/commands/attribute-commands.js +482 -0
  66. package/dist/backend/commands/attribute-commands.js.map +1 -0
  67. package/dist/backend/demo/reset.d.ts +23 -0
  68. package/dist/backend/demo/reset.d.ts.map +1 -0
  69. package/dist/backend/demo/reset.js +41 -0
  70. package/dist/backend/demo/reset.js.map +1 -0
  71. package/dist/backend/demo/rows.d.ts +103 -0
  72. package/dist/backend/demo/rows.d.ts.map +1 -0
  73. package/dist/backend/demo/rows.js +162 -0
  74. package/dist/backend/demo/rows.js.map +1 -0
  75. package/dist/backend/demo/seed.d.ts +35 -0
  76. package/dist/backend/demo/seed.d.ts.map +1 -0
  77. package/dist/backend/demo/seed.js +177 -0
  78. package/dist/backend/demo/seed.js.map +1 -0
  79. package/dist/backend/entities/attachment-type.entity.d.ts +16 -0
  80. package/dist/backend/entities/attachment-type.entity.d.ts.map +1 -0
  81. package/dist/backend/entities/attachment-type.entity.js +57 -0
  82. package/dist/backend/entities/attachment-type.entity.js.map +1 -0
  83. package/dist/backend/entities/attribute-set-attribute.entity.d.ts +26 -0
  84. package/dist/backend/entities/attribute-set-attribute.entity.d.ts.map +1 -0
  85. package/dist/backend/entities/attribute-set-attribute.entity.js +55 -0
  86. package/dist/backend/entities/attribute-set-attribute.entity.js.map +1 -0
  87. package/dist/backend/entities/attribute-set.entity.d.ts +22 -0
  88. package/dist/backend/entities/attribute-set.entity.d.ts.map +1 -0
  89. package/dist/backend/entities/attribute-set.entity.js +67 -0
  90. package/dist/backend/entities/attribute-set.entity.js.map +1 -0
  91. package/dist/backend/entities/bulk-operation.entity.d.ts +78 -0
  92. package/dist/backend/entities/bulk-operation.entity.d.ts.map +1 -0
  93. package/dist/backend/entities/bulk-operation.entity.js +138 -0
  94. package/dist/backend/entities/bulk-operation.entity.js.map +1 -0
  95. package/dist/backend/entities/bundle-slot-option.entity.d.ts +23 -0
  96. package/dist/backend/entities/bundle-slot-option.entity.d.ts.map +1 -0
  97. package/dist/backend/entities/bundle-slot-option.entity.js +68 -0
  98. package/dist/backend/entities/bundle-slot-option.entity.js.map +1 -0
  99. package/dist/backend/entities/bundle-slot.entity.d.ts +25 -0
  100. package/dist/backend/entities/bundle-slot.entity.d.ts.map +1 -0
  101. package/dist/backend/entities/bundle-slot.entity.js +74 -0
  102. package/dist/backend/entities/bundle-slot.entity.js.map +1 -0
  103. package/dist/backend/entities/category.entity.d.ts +26 -0
  104. package/dist/backend/entities/category.entity.d.ts.map +1 -0
  105. package/dist/backend/entities/category.entity.js +119 -0
  106. package/dist/backend/entities/category.entity.js.map +1 -0
  107. package/dist/backend/entities/gallery-item-label.entity.d.ts +22 -0
  108. package/dist/backend/entities/gallery-item-label.entity.d.ts.map +1 -0
  109. package/dist/backend/entities/gallery-item-label.entity.js +50 -0
  110. package/dist/backend/entities/gallery-item-label.entity.js.map +1 -0
  111. package/dist/backend/entities/gallery-item.entity.d.ts +17 -0
  112. package/dist/backend/entities/gallery-item.entity.d.ts.map +1 -0
  113. package/dist/backend/entities/gallery-item.entity.js +58 -0
  114. package/dist/backend/entities/gallery-item.entity.js.map +1 -0
  115. package/dist/backend/entities/grouped-item.entity.d.ts +23 -0
  116. package/dist/backend/entities/grouped-item.entity.d.ts.map +1 -0
  117. package/dist/backend/entities/grouped-item.entity.js +68 -0
  118. package/dist/backend/entities/grouped-item.entity.js.map +1 -0
  119. package/dist/backend/entities/product-attachment.entity.d.ts +23 -0
  120. package/dist/backend/entities/product-attachment.entity.d.ts.map +1 -0
  121. package/dist/backend/entities/product-attachment.entity.js +77 -0
  122. package/dist/backend/entities/product-attachment.entity.js.map +1 -0
  123. package/dist/backend/entities/product-attribute.entity.d.ts +72 -0
  124. package/dist/backend/entities/product-attribute.entity.d.ts.map +1 -0
  125. package/dist/backend/entities/product-attribute.entity.js +161 -0
  126. package/dist/backend/entities/product-attribute.entity.js.map +1 -0
  127. package/dist/backend/entities/product-editor-preference.entity.d.ts +28 -0
  128. package/dist/backend/entities/product-editor-preference.entity.d.ts.map +1 -0
  129. package/dist/backend/entities/product-editor-preference.entity.js +63 -0
  130. package/dist/backend/entities/product-editor-preference.entity.js.map +1 -0
  131. package/dist/backend/entities/product-link.entity.d.ts +25 -0
  132. package/dist/backend/entities/product-link.entity.d.ts.map +1 -0
  133. package/dist/backend/entities/product-link.entity.js +70 -0
  134. package/dist/backend/entities/product-link.entity.js.map +1 -0
  135. package/dist/backend/entities/product-packaging-unit.entity.d.ts +26 -0
  136. package/dist/backend/entities/product-packaging-unit.entity.d.ts.map +1 -0
  137. package/dist/backend/entities/product-packaging-unit.entity.js +76 -0
  138. package/dist/backend/entities/product-packaging-unit.entity.js.map +1 -0
  139. package/dist/backend/entities/product-value-override.entity.d.ts +43 -0
  140. package/dist/backend/entities/product-value-override.entity.d.ts.map +1 -0
  141. package/dist/backend/entities/product-value-override.entity.js +90 -0
  142. package/dist/backend/entities/product-value-override.entity.js.map +1 -0
  143. package/dist/backend/entities/product-variant.entity.d.ts +18 -0
  144. package/dist/backend/entities/product-variant.entity.d.ts.map +1 -0
  145. package/dist/backend/entities/product-variant.entity.js +68 -0
  146. package/dist/backend/entities/product-variant.entity.js.map +1 -0
  147. package/dist/backend/entities/product.entity.d.ts +108 -0
  148. package/dist/backend/entities/product.entity.d.ts.map +1 -0
  149. package/dist/backend/entities/product.entity.js +230 -0
  150. package/dist/backend/entities/product.entity.js.map +1 -0
  151. package/dist/backend/index.d.ts +262 -0
  152. package/dist/backend/index.d.ts.map +1 -0
  153. package/dist/backend/index.js +642 -0
  154. package/dist/backend/index.js.map +1 -0
  155. package/dist/backend/plugin.d.ts +216 -0
  156. package/dist/backend/plugin.d.ts.map +1 -0
  157. package/dist/backend/plugin.js +223 -0
  158. package/dist/backend/plugin.js.map +1 -0
  159. package/dist/backend/prompt-tools.d.ts +47 -0
  160. package/dist/backend/prompt-tools.d.ts.map +1 -0
  161. package/dist/backend/prompt-tools.js +284 -0
  162. package/dist/backend/prompt-tools.js.map +1 -0
  163. package/dist/backend/routes.admin.d.ts +105 -0
  164. package/dist/backend/routes.admin.d.ts.map +1 -0
  165. package/dist/backend/routes.admin.js +1162 -0
  166. package/dist/backend/routes.admin.js.map +1 -0
  167. package/dist/backend/routes.api-key.d.ts +33 -0
  168. package/dist/backend/routes.api-key.d.ts.map +1 -0
  169. package/dist/backend/routes.api-key.js +43 -0
  170. package/dist/backend/routes.api-key.js.map +1 -0
  171. package/dist/backend/routes.external.d.ts +32 -0
  172. package/dist/backend/routes.external.d.ts.map +1 -0
  173. package/dist/backend/routes.external.js +115 -0
  174. package/dist/backend/routes.external.js.map +1 -0
  175. package/dist/backend/routes.public.d.ts +46 -0
  176. package/dist/backend/routes.public.d.ts.map +1 -0
  177. package/dist/backend/routes.public.js +318 -0
  178. package/dist/backend/routes.public.js.map +1 -0
  179. package/dist/backend/services/asset-references.d.ts +4 -0
  180. package/dist/backend/services/asset-references.d.ts.map +1 -0
  181. package/dist/backend/services/asset-references.js +104 -0
  182. package/dist/backend/services/asset-references.js.map +1 -0
  183. package/dist/backend/services/attachment.service.d.ts +45 -0
  184. package/dist/backend/services/attachment.service.d.ts.map +1 -0
  185. package/dist/backend/services/attachment.service.js +268 -0
  186. package/dist/backend/services/attachment.service.js.map +1 -0
  187. package/dist/backend/services/attribute-option-validator.d.ts +47 -0
  188. package/dist/backend/services/attribute-option-validator.d.ts.map +1 -0
  189. package/dist/backend/services/attribute-option-validator.js +69 -0
  190. package/dist/backend/services/attribute-option-validator.js.map +1 -0
  191. package/dist/backend/services/attribute-set-validations.d.ts +65 -0
  192. package/dist/backend/services/attribute-set-validations.d.ts.map +1 -0
  193. package/dist/backend/services/attribute-set-validations.js +89 -0
  194. package/dist/backend/services/attribute-set-validations.js.map +1 -0
  195. package/dist/backend/services/attribute-set.service.d.ts +50 -0
  196. package/dist/backend/services/attribute-set.service.d.ts.map +1 -0
  197. package/dist/backend/services/attribute-set.service.js +401 -0
  198. package/dist/backend/services/attribute-set.service.js.map +1 -0
  199. package/dist/backend/services/attribute-type-mapping.d.ts +66 -0
  200. package/dist/backend/services/attribute-type-mapping.d.ts.map +1 -0
  201. package/dist/backend/services/attribute-type-mapping.js +121 -0
  202. package/dist/backend/services/attribute-type-mapping.js.map +1 -0
  203. package/dist/backend/services/attribute-value-key.service.d.ts +48 -0
  204. package/dist/backend/services/attribute-value-key.service.d.ts.map +1 -0
  205. package/dist/backend/services/attribute-value-key.service.js +118 -0
  206. package/dist/backend/services/attribute-value-key.service.js.map +1 -0
  207. package/dist/backend/services/audit-references.d.ts +13 -0
  208. package/dist/backend/services/audit-references.d.ts.map +1 -0
  209. package/dist/backend/services/audit-references.js +51 -0
  210. package/dist/backend/services/audit-references.js.map +1 -0
  211. package/dist/backend/services/bulk-operation-queue.d.ts +26 -0
  212. package/dist/backend/services/bulk-operation-queue.d.ts.map +1 -0
  213. package/dist/backend/services/bulk-operation-queue.js +34 -0
  214. package/dist/backend/services/bulk-operation-queue.js.map +1 -0
  215. package/dist/backend/services/bulk-operation.service.d.ts +195 -0
  216. package/dist/backend/services/bulk-operation.service.d.ts.map +1 -0
  217. package/dist/backend/services/bulk-operation.service.js +510 -0
  218. package/dist/backend/services/bulk-operation.service.js.map +1 -0
  219. package/dist/backend/services/bundle.service.d.ts +87 -0
  220. package/dist/backend/services/bundle.service.d.ts.map +1 -0
  221. package/dist/backend/services/bundle.service.js +286 -0
  222. package/dist/backend/services/bundle.service.js.map +1 -0
  223. package/dist/backend/services/catalog-admin.service.d.ts +398 -0
  224. package/dist/backend/services/catalog-admin.service.d.ts.map +1 -0
  225. package/dist/backend/services/catalog-admin.service.js +1516 -0
  226. package/dist/backend/services/catalog-admin.service.js.map +1 -0
  227. package/dist/backend/services/catalog-attribute-read.service.d.ts +78 -0
  228. package/dist/backend/services/catalog-attribute-read.service.d.ts.map +1 -0
  229. package/dist/backend/services/catalog-attribute-read.service.js +216 -0
  230. package/dist/backend/services/catalog-attribute-read.service.js.map +1 -0
  231. package/dist/backend/services/catalog-bulk-import.service.d.ts +30 -0
  232. package/dist/backend/services/catalog-bulk-import.service.d.ts.map +1 -0
  233. package/dist/backend/services/catalog-bulk-import.service.js +136 -0
  234. package/dist/backend/services/catalog-bulk-import.service.js.map +1 -0
  235. package/dist/backend/services/catalog-bulk-update.service.d.ts +91 -0
  236. package/dist/backend/services/catalog-bulk-update.service.d.ts.map +1 -0
  237. package/dist/backend/services/catalog-bulk-update.service.js +330 -0
  238. package/dist/backend/services/catalog-bulk-update.service.js.map +1 -0
  239. package/dist/backend/services/catalog-category-read.service.d.ts +66 -0
  240. package/dist/backend/services/catalog-category-read.service.d.ts.map +1 -0
  241. package/dist/backend/services/catalog-category-read.service.js +248 -0
  242. package/dist/backend/services/catalog-category-read.service.js.map +1 -0
  243. package/dist/backend/services/catalog-org-price-decorator.d.ts +90 -0
  244. package/dist/backend/services/catalog-org-price-decorator.d.ts.map +1 -0
  245. package/dist/backend/services/catalog-org-price-decorator.js +184 -0
  246. package/dist/backend/services/catalog-org-price-decorator.js.map +1 -0
  247. package/dist/backend/services/catalog-product-filter.service.d.ts +82 -0
  248. package/dist/backend/services/catalog-product-filter.service.d.ts.map +1 -0
  249. package/dist/backend/services/catalog-product-filter.service.js +275 -0
  250. package/dist/backend/services/catalog-product-filter.service.js.map +1 -0
  251. package/dist/backend/services/catalog-product-read.service.d.ts +46 -0
  252. package/dist/backend/services/catalog-product-read.service.d.ts.map +1 -0
  253. package/dist/backend/services/catalog-product-read.service.js +197 -0
  254. package/dist/backend/services/catalog-product-read.service.js.map +1 -0
  255. package/dist/backend/services/catalog-query.service.d.ts +444 -0
  256. package/dist/backend/services/catalog-query.service.d.ts.map +1 -0
  257. package/dist/backend/services/catalog-query.service.js +1633 -0
  258. package/dist/backend/services/catalog-query.service.js.map +1 -0
  259. package/dist/backend/services/catalog-quick-search.service.d.ts +78 -0
  260. package/dist/backend/services/catalog-quick-search.service.d.ts.map +1 -0
  261. package/dist/backend/services/catalog-quick-search.service.js +159 -0
  262. package/dist/backend/services/catalog-quick-search.service.js.map +1 -0
  263. package/dist/backend/services/catalog-write-ports.d.ts +25 -0
  264. package/dist/backend/services/catalog-write-ports.d.ts.map +1 -0
  265. package/dist/backend/services/catalog-write-ports.js +63 -0
  266. package/dist/backend/services/catalog-write-ports.js.map +1 -0
  267. package/dist/backend/services/category-admin.service.d.ts +102 -0
  268. package/dist/backend/services/category-admin.service.d.ts.map +1 -0
  269. package/dist/backend/services/category-admin.service.js +271 -0
  270. package/dist/backend/services/category-admin.service.js.map +1 -0
  271. package/dist/backend/services/gallery.service.d.ts +85 -0
  272. package/dist/backend/services/gallery.service.d.ts.map +1 -0
  273. package/dist/backend/services/gallery.service.js +326 -0
  274. package/dist/backend/services/gallery.service.js.map +1 -0
  275. package/dist/backend/services/grouped.service.d.ts +39 -0
  276. package/dist/backend/services/grouped.service.d.ts.map +1 -0
  277. package/dist/backend/services/grouped.service.js +136 -0
  278. package/dist/backend/services/grouped.service.js.map +1 -0
  279. package/dist/backend/services/label-resolver.d.ts +16 -0
  280. package/dist/backend/services/label-resolver.d.ts.map +1 -0
  281. package/dist/backend/services/label-resolver.js +43 -0
  282. package/dist/backend/services/label-resolver.js.map +1 -0
  283. package/dist/backend/services/packaging-unit.service.d.ts +28 -0
  284. package/dist/backend/services/packaging-unit.service.d.ts.map +1 -0
  285. package/dist/backend/services/packaging-unit.service.js +197 -0
  286. package/dist/backend/services/packaging-unit.service.js.map +1 -0
  287. package/dist/backend/services/primary-asset-url.d.ts +4 -0
  288. package/dist/backend/services/primary-asset-url.d.ts.map +1 -0
  289. package/dist/backend/services/primary-asset-url.js +55 -0
  290. package/dist/backend/services/primary-asset-url.js.map +1 -0
  291. package/dist/backend/services/product-editor-preferences.service.d.ts +20 -0
  292. package/dist/backend/services/product-editor-preferences.service.d.ts.map +1 -0
  293. package/dist/backend/services/product-editor-preferences.service.js +44 -0
  294. package/dist/backend/services/product-editor-preferences.service.js.map +1 -0
  295. package/dist/backend/services/product-link.service.d.ts +169 -0
  296. package/dist/backend/services/product-link.service.d.ts.map +1 -0
  297. package/dist/backend/services/product-link.service.js +297 -0
  298. package/dist/backend/services/product-link.service.js.map +1 -0
  299. package/dist/backend/services/product-overrides.service.d.ts +77 -0
  300. package/dist/backend/services/product-overrides.service.d.ts.map +1 -0
  301. package/dist/backend/services/product-overrides.service.js +204 -0
  302. package/dist/backend/services/product-overrides.service.js.map +1 -0
  303. package/dist/backend/services/product-scope-context.service.d.ts +36 -0
  304. package/dist/backend/services/product-scope-context.service.d.ts.map +1 -0
  305. package/dist/backend/services/product-scope-context.service.js +106 -0
  306. package/dist/backend/services/product-scope-context.service.js.map +1 -0
  307. package/dist/backend/services/product-type-validations.d.ts +42 -0
  308. package/dist/backend/services/product-type-validations.d.ts.map +1 -0
  309. package/dist/backend/services/product-type-validations.js +55 -0
  310. package/dist/backend/services/product-type-validations.js.map +1 -0
  311. package/dist/backend/services/product-value-resolver.service.d.ts +59 -0
  312. package/dist/backend/services/product-value-resolver.service.d.ts.map +1 -0
  313. package/dist/backend/services/product-value-resolver.service.js +111 -0
  314. package/dist/backend/services/product-value-resolver.service.js.map +1 -0
  315. package/dist/backend/services/system-attribute-scopes.d.ts +18 -0
  316. package/dist/backend/services/system-attribute-scopes.d.ts.map +1 -0
  317. package/dist/backend/services/system-attribute-scopes.js +18 -0
  318. package/dist/backend/services/system-attribute-scopes.js.map +1 -0
  319. package/dist/backend/services/viewer-organization.d.ts +25 -0
  320. package/dist/backend/services/viewer-organization.d.ts.map +1 -0
  321. package/dist/backend/services/viewer-organization.js +31 -0
  322. package/dist/backend/services/viewer-organization.js.map +1 -0
  323. package/dist/manifest.d.ts +204 -0
  324. package/dist/manifest.d.ts.map +1 -0
  325. package/dist/manifest.js +686 -0
  326. package/dist/manifest.js.map +1 -0
  327. package/dist/migrations/20260429T064146_catalog_attribute_sets_init.d.ts +33 -0
  328. package/dist/migrations/20260429T064146_catalog_attribute_sets_init.d.ts.map +1 -0
  329. package/dist/migrations/20260429T064146_catalog_attribute_sets_init.js +118 -0
  330. package/dist/migrations/20260429T064146_catalog_attribute_sets_init.js.map +1 -0
  331. package/dist/migrations/20260429T070004_catalog_product_attribute_extensions.d.ts +24 -0
  332. package/dist/migrations/20260429T070004_catalog_product_attribute_extensions.d.ts.map +1 -0
  333. package/dist/migrations/20260429T070004_catalog_product_attribute_extensions.js +31 -0
  334. package/dist/migrations/20260429T070004_catalog_product_attribute_extensions.js.map +1 -0
  335. package/dist/migrations/20260429T102322_catalog_product_type_and_virtual_fields.d.ts +32 -0
  336. package/dist/migrations/20260429T102322_catalog_product_type_and_virtual_fields.d.ts.map +1 -0
  337. package/dist/migrations/20260429T102322_catalog_product_type_and_virtual_fields.js +58 -0
  338. package/dist/migrations/20260429T102322_catalog_product_type_and_virtual_fields.js.map +1 -0
  339. package/dist/migrations/20260429T111839_catalog_gallery_items_and_labels.d.ts +22 -0
  340. package/dist/migrations/20260429T111839_catalog_gallery_items_and_labels.d.ts.map +1 -0
  341. package/dist/migrations/20260429T111839_catalog_gallery_items_and_labels.js +66 -0
  342. package/dist/migrations/20260429T111839_catalog_gallery_items_and_labels.js.map +1 -0
  343. package/dist/migrations/20260429T112543_catalog_product_attachments.d.ts +18 -0
  344. package/dist/migrations/20260429T112543_catalog_product_attachments.d.ts.map +1 -0
  345. package/dist/migrations/20260429T112543_catalog_product_attachments.js +73 -0
  346. package/dist/migrations/20260429T112543_catalog_product_attachments.js.map +1 -0
  347. package/dist/migrations/20260429T123726_catalog_product_links.d.ts +21 -0
  348. package/dist/migrations/20260429T123726_catalog_product_links.d.ts.map +1 -0
  349. package/dist/migrations/20260429T123726_catalog_product_links.js +48 -0
  350. package/dist/migrations/20260429T123726_catalog_product_links.js.map +1 -0
  351. package/dist/migrations/20260429T130803_catalog_grouped_and_bundle.d.ts +23 -0
  352. package/dist/migrations/20260429T130803_catalog_grouped_and_bundle.d.ts.map +1 -0
  353. package/dist/migrations/20260429T130803_catalog_grouped_and_bundle.js +94 -0
  354. package/dist/migrations/20260429T130803_catalog_grouped_and_bundle.js.map +1 -0
  355. package/dist/migrations/20260501T185835_catalog_product_attribute_is_comparable.d.ts +24 -0
  356. package/dist/migrations/20260501T185835_catalog_product_attribute_is_comparable.d.ts.map +1 -0
  357. package/dist/migrations/20260501T185835_catalog_product_attribute_is_comparable.js +31 -0
  358. package/dist/migrations/20260501T185835_catalog_product_attribute_is_comparable.js.map +1 -0
  359. package/dist/migrations/20260505T060113_catalog_attribute_options_and_flags.d.ts +31 -0
  360. package/dist/migrations/20260505T060113_catalog_attribute_options_and_flags.d.ts.map +1 -0
  361. package/dist/migrations/20260505T060113_catalog_attribute_options_and_flags.js +133 -0
  362. package/dist/migrations/20260505T060113_catalog_attribute_options_and_flags.js.map +1 -0
  363. package/dist/migrations/20260515T082629_catalog_attribute_mass_editable.d.ts +16 -0
  364. package/dist/migrations/20260515T082629_catalog_attribute_mass_editable.d.ts.map +1 -0
  365. package/dist/migrations/20260515T082629_catalog_attribute_mass_editable.js +23 -0
  366. package/dist/migrations/20260515T082629_catalog_attribute_mass_editable.js.map +1 -0
  367. package/dist/migrations/20260526T124736_catalog_product_status_inactive.d.ts +10 -0
  368. package/dist/migrations/20260526T124736_catalog_product_status_inactive.d.ts.map +1 -0
  369. package/dist/migrations/20260526T124736_catalog_product_status_inactive.js +22 -0
  370. package/dist/migrations/20260526T124736_catalog_product_status_inactive.js.map +1 -0
  371. package/dist/migrations/20260611T140346_catalog_product_value_overrides_init.d.ts +38 -0
  372. package/dist/migrations/20260611T140346_catalog_product_value_overrides_init.d.ts.map +1 -0
  373. package/dist/migrations/20260611T140346_catalog_product_value_overrides_init.js +98 -0
  374. package/dist/migrations/20260611T140346_catalog_product_value_overrides_init.js.map +1 -0
  375. package/dist/migrations/20260611T140400_catalog_attribute_quick_searchable.d.ts +13 -0
  376. package/dist/migrations/20260611T140400_catalog_attribute_quick_searchable.d.ts.map +1 -0
  377. package/dist/migrations/20260611T140400_catalog_attribute_quick_searchable.js +17 -0
  378. package/dist/migrations/20260611T140400_catalog_attribute_quick_searchable.js.map +1 -0
  379. package/dist/migrations/20260611T140407_catalog_bulk_operations.d.ts +16 -0
  380. package/dist/migrations/20260611T140407_catalog_bulk_operations.d.ts.map +1 -0
  381. package/dist/migrations/20260611T140407_catalog_bulk_operations.js +42 -0
  382. package/dist/migrations/20260611T140407_catalog_bulk_operations.js.map +1 -0
  383. package/dist/migrations/20260611T140408_catalog_bulk_operation_logs.d.ts +14 -0
  384. package/dist/migrations/20260611T140408_catalog_bulk_operation_logs.d.ts.map +1 -0
  385. package/dist/migrations/20260611T140408_catalog_bulk_operation_logs.js +18 -0
  386. package/dist/migrations/20260611T140408_catalog_bulk_operation_logs.js.map +1 -0
  387. package/dist/migrations/20260611T140412_catalog_product_packaging_units.d.ts +11 -0
  388. package/dist/migrations/20260611T140412_catalog_product_packaging_units.d.ts.map +1 -0
  389. package/dist/migrations/20260611T140412_catalog_product_packaging_units.js +29 -0
  390. package/dist/migrations/20260611T140412_catalog_product_packaging_units.js.map +1 -0
  391. package/dist/migrations/20260718T060659_catalog_bulk_operation_revert_state.d.ts +23 -0
  392. package/dist/migrations/20260718T060659_catalog_bulk_operation_revert_state.d.ts.map +1 -0
  393. package/dist/migrations/20260718T060659_catalog_bulk_operation_revert_state.js +35 -0
  394. package/dist/migrations/20260718T060659_catalog_bulk_operation_revert_state.js.map +1 -0
  395. package/dist/migrations/20260718T200343_catalog_category_custom_field_values.d.ts +12 -0
  396. package/dist/migrations/20260718T200343_catalog_category_custom_field_values.d.ts.map +1 -0
  397. package/dist/migrations/20260718T200343_catalog_category_custom_field_values.js +16 -0
  398. package/dist/migrations/20260718T200343_catalog_category_custom_field_values.js.map +1 -0
  399. package/dist/migrations/20260723T230401_catalog_attributes_on_custom_fields.d.ts +32 -0
  400. package/dist/migrations/20260723T230401_catalog_attributes_on_custom_fields.d.ts.map +1 -0
  401. package/dist/migrations/20260723T230401_catalog_attributes_on_custom_fields.js +286 -0
  402. package/dist/migrations/20260723T230401_catalog_attributes_on_custom_fields.js.map +1 -0
  403. package/dist/migrations/20260804T152604_catalog_widen_product_sku.d.ts +36 -0
  404. package/dist/migrations/20260804T152604_catalog_widen_product_sku.d.ts.map +1 -0
  405. package/dist/migrations/20260804T152604_catalog_widen_product_sku.js +63 -0
  406. package/dist/migrations/20260804T152604_catalog_widen_product_sku.js.map +1 -0
  407. package/dist/migrations/20260804T160244_catalog_category_activation.d.ts +18 -0
  408. package/dist/migrations/20260804T160244_catalog_category_activation.d.ts.map +1 -0
  409. package/dist/migrations/20260804T160244_catalog_category_activation.js +22 -0
  410. package/dist/migrations/20260804T160244_catalog_category_activation.js.map +1 -0
  411. package/dist/migrations/20260912T094557_catalog_sales_channel_products.d.ts +27 -0
  412. package/dist/migrations/20260912T094557_catalog_sales_channel_products.d.ts.map +1 -0
  413. package/dist/migrations/20260912T094557_catalog_sales_channel_products.js +44 -0
  414. package/dist/migrations/20260912T094557_catalog_sales_channel_products.js.map +1 -0
  415. package/dist/migrations/20260912T094623_catalog_sales_channel_categories.d.ts +27 -0
  416. package/dist/migrations/20260912T094623_catalog_sales_channel_categories.d.ts.map +1 -0
  417. package/dist/migrations/20260912T094623_catalog_sales_channel_categories.js +44 -0
  418. package/dist/migrations/20260912T094623_catalog_sales_channel_categories.js.map +1 -0
  419. package/dist/migrations/20260925T125527_catalog_inventory_columns.d.ts +36 -0
  420. package/dist/migrations/20260925T125527_catalog_inventory_columns.d.ts.map +1 -0
  421. package/dist/migrations/20260925T125527_catalog_inventory_columns.js +87 -0
  422. package/dist/migrations/20260925T125527_catalog_inventory_columns.js.map +1 -0
  423. package/dist/migrations/index.d.ts +55 -0
  424. package/dist/migrations/index.d.ts.map +1 -0
  425. package/dist/migrations/index.js +80 -0
  426. package/dist/migrations/index.js.map +1 -0
  427. package/dist/ports/index.d.ts +96 -0
  428. package/dist/ports/index.d.ts.map +1 -0
  429. package/dist/ports/index.js +2 -0
  430. package/dist/ports/index.js.map +1 -0
  431. package/docs/catalog/attachments.md +69 -0
  432. package/docs/catalog/attribute-sets.md +63 -0
  433. package/docs/catalog/attributes.md +244 -0
  434. package/docs/catalog/composite-products.md +115 -0
  435. package/docs/catalog/gallery-and-labels.md +73 -0
  436. package/docs/catalog/packaging-units.md +67 -0
  437. package/docs/catalog/per-channel-per-language-overrides.md +234 -0
  438. package/docs/catalog/product-links.md +79 -0
  439. package/docs/catalog.md +207 -0
  440. package/i18n/en.json +649 -0
  441. package/i18n/pl.json +649 -0
  442. package/package.json +109 -0
  443. package/tailwind.css +14 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductEditor.js","sourceRoot":"","sources":["../../../src/admin/pages/ProductEditor.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,UAAU,EACV,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,OAAO,EACP,MAAM,EACN,QAAQ,GAIT,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,MAAM,EACN,WAAW,EACX,IAAI,EACJ,GAAG,EACH,QAAQ,IAAI,YAAY,EACxB,KAAK,EACL,YAAY,EACZ,KAAK,IAAI,SAAS,EAClB,gBAAgB,EAChB,MAAM,EACN,IAAI,IAAI,QAAQ,EAChB,SAAS,EACT,IAAI,EACJ,iBAAiB,EACjB,KAAK,IAAI,SAAS,EAClB,SAAS,IAAI,aAAa,GAC3B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACtH,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC/M,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAC/I,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EACL,kBAAkB,GAEnB,MAAM,qCAAqC,CAAC;AAE7C,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,OAAO,CAAU,CAAC;AAG5C,MAAM,aAAa,GAAG;IACpB,QAAQ;IACR,cAAc;IACd,SAAS;IACT,QAAQ;IACR,SAAS;CACD,CAAC;AACX,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,gBAAgB,EAAE,yBAAyB,CAAU,CAAC;AACtF,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC;AA+B1D;;;;GAIG;AACH,SAAS,cAAc,CAAC,MAA+B;IACrD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QACnD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACvC,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACjE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CACnB,CACF,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,SAAS,EAAkB,CAAC;IAC3C,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,KAAK,KAAK,CAAC;IAClC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC;IAE5C,2EAA2E;IAC3E,4EAA4E;IAC5E,qDAAqD;IACrD,MAAM,oBAAoB,GAAG,YAAY,CAAC,yBAAyB,EAAE;QACnE,SAAS,EAAE,EAAE,IAAI,EAAE;KACpB,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACtD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAkB,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAA+D,QAAQ,CAAC,CAAC;IACzG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAkC,OAAO,CAAC,CAAC;IAC/E,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAA6B,QAAQ,CAAC,CAAC;IACnF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAyB,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IACvF,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAyB;QACrE,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,EAAE;KACZ,CAAC,CAAC;IACH,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAS,SAAS,CAAC,CAAC;IAC9D,8CAA8C;IAC9C,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAsB,EAAE,CAAC,CAAC;IAC5E,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACjE,uEAAuE;IACvE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAA0B,EAAE,CAAC,CAAC;IAC1E,uEAAuE;IACvE,qEAAqE;IACrE,MAAM,cAAc,GAAG,MAAM,CAAkC,IAAI,CAAC,CAAC;IACrE,0EAA0E;IAC1E,8DAA8D;IAC9D,MAAM,UAAU,GAAG,MAAM,CAA8B,IAAI,CAAC,CAAC;IAE7D,4EAA4E;IAC5E,4EAA4E;IAC5E,4CAA4C;IAC5C,MAAM,kBAAkB,GAAG,MAAM,CAAS,EAAE,CAAC,CAAC;IAC9C,MAAM,eAAe,GAAG,cAAc,CAAC;QACrC,GAAG;QACH,IAAI;QACJ,MAAM;QACN,UAAU;QACV,IAAI;QACJ,WAAW;QACX,YAAY;QACZ,WAAW;QACX,cAAc;QACd,UAAU;KACX,CAAC,CAAC;IACH,MAAM,KAAK,GACT,CAAC,OAAO;QACR,kBAAkB,CAAC,OAAO,KAAK,EAAE;QACjC,eAAe,KAAK,kBAAkB,CAAC,OAAO,CAAC;IACjD,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAE/B,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACpD,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACrC,SAAS,CAAC,GAAG,CAA4B,kCAAkC,CAAC;gBAC5E,SAAS,CAAC,GAAG,CACX,sCAAsC,CACvC;aACF,CAAC,CAAC;YACH,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,qEAAqE;YACrE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YAC/D,IAAI,KAAK,IAAI,UAAU;gBAAE,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC1D,IAAI,KAAK,EAAE,CAAC;gBACV,kEAAkE;gBAClE,kBAAkB,CAAC,OAAO,GAAG,cAAc,CAAC;oBAC1C,GAAG,EAAE,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,OAAO;oBACf,UAAU,EAAE,QAAQ;oBACpB,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;oBAClC,WAAW,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;oBACzC,YAAY,EAAE,EAAE;oBAChB,WAAW,EAAE,EAAE;oBACf,cAAc,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE;oBACpC,UAAU,EAAE,EAAE;iBACf,CAAC,CAAC;YACL,CAAC;YACD,IAAI,EAAE,EAAE,CAAC;gBACP,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,kCAAkC,EAAE,EAAE,CACvC,CAAC;gBACF,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;gBACnB,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACd,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAChB,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACpB,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;gBAC5B,MAAM,UAAU,GAAG;oBACjB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;oBAC9B,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;iBAC/B,CAAC;gBACF,OAAO,CAAC,UAAU,CAAC,CAAC;gBACpB,MAAM,iBAAiB,GAAG;oBACxB,OAAO,EAAE,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE;oBACrC,OAAO,EAAE,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE;iBACtC,CAAC;gBACF,cAAc,CAAC,iBAAiB,CAAC,CAAC;gBAClC,MAAM,KAAK,GAAI,CAAC,CAAC,eAAe,CAAC,cAAc,CAAwB,IAAI,IAAI,CAAC;gBAChF,MAAM,WAAW,GAAG,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvD,eAAe,CAAC,WAAW,CAAC,CAAC;gBAC7B,aAAa,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;gBACvC,iBAAiB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;gBACpC,cAAc,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;gBACpC,qEAAqE;gBACrE,kBAAkB,CAAC,OAAO,GAAG,cAAc,CAAC;oBAC1C,GAAG,EAAE,CAAC,CAAC,GAAG;oBACV,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,UAAU,EAAE,CAAC,CAAC,UAAU;oBACxB,IAAI,EAAE,UAAU;oBAChB,WAAW,EAAE,iBAAiB;oBAC9B,YAAY,EAAE,WAAW;oBACzB,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;oBAChC,cAAc,EAAE,CAAC,CAAC,cAAc;oBAChC,UAAU,EAAE,CAAC,CAAC,eAAe,IAAI,EAAE;iBACpC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;QACrF,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IAEhB,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,OAAO,EAAE,CAAC;IACjB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,UAAU,GAAG,WAAW,CAC5B,KAAK,EAAE,CAAY,EAAiB,EAAE;QACpC,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,WAAW,GAA2B,EAAE,CAAC;QAC/C,MAAM,kBAAkB,GAA2B,EAAE,CAAC;QACtD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,CAAC,CAAC;gBAAE,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACtC,IAAI,WAAW,CAAC,CAAC,CAAC;gBAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1C,QAAQ,CAAC,uCAAuC,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QACD,kEAAkE;QAClE,gEAAgE;QAChE,MAAM,eAAe,GAA4B,EAAE,GAAG,UAAU,EAAE,CAAC;QACnE,OAAO,eAAe,CAAC,cAAc,CAAC,CAAC;QACvC,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,QAAQ,CAAC,qCAAqC,CAAC,CAAC;gBAChD,OAAO;YACT,CAAC;YACD,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,IAAI,CAC9B,gCAAgC,EAChC;oBACE,GAAG;oBACH,IAAI;oBACJ,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,kBAAkB;oBAC/B,WAAW;oBACX,eAAe;oBACf,UAAU;oBACV,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC9C,CACF,CAAC;gBACF,QAAQ,CAAC,qBAAqB,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/C,CAAC;iBAAM,IAAI,EAAE,EAAE,CAAC;gBACd,iEAAiE;gBACjE,oEAAoE;gBACpE,gEAAgE;gBAChE,6DAA6D;gBAC7D,0DAA0D;gBAC1D,MAAM,OAAO,CAAC,GAAG,CAAC;oBAChB,SAAS,CAAC,KAAK,CACb,kCAAkC,EAAE,EAAE,EACtC;wBACE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE;wBACf,MAAM;wBACN,IAAI,EAAE,WAAW;wBACjB,WAAW,EAAE,kBAAkB;wBAC/B,WAAW;wBACX,eAAe;wBACf,UAAU;wBACV,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC9C,CACF;oBACD,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE;oBAC7D,UAAU,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE;iBACxD,CAAC,CAAC;gBACH,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAClB,MAAM,OAAO,EAAE,CAAC;YAClB,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QAClF,CAAC;IACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CACxI,CAAC;IAEF,MAAM,gBAAgB,GAAG,WAAW,CAAC,CAAC,GAAW,EAAE,KAAc,EAAQ,EAAE;QACzE,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,wEAAwE;IACxE,yEAAyE;IACzE,wEAAwE;IACxE,uEAAuE;IACvE,MAAM,wBAAwB,GAAG,WAAW,CAC1C,KAAK,EAAE,QAAgB,EAAiB,EAAE;QACxC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC5B,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,wCAAwC,QAAQ,EAAE,CACnD,CAAC;YACF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/D,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE;gBACrB,MAAM,IAAI,GAA4B,EAAE,CAAC;gBACzC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,cAAc,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC;wBAC5D,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACd,CAAC;gBACH,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,mEAAmE;YACnE,iEAAiE;QACnE,CAAC;IACH,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,mBAAmB,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QAChE,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC;YAAE,OAAO;QACvD,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,MAAM,CAAO,kCAAkC,EAAE,EAAE,CAAC,CAAC;YACrE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;QACpF,CAAC;IACH,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAEtB,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QAC5D,IAAI,CAAC,EAAE,IAAI,WAAW;YAAE,OAAO;QAC/B,IAAI,CAAC,OAAO,CAAC,uDAAuD,CAAC;YAAE,OAAO;QAC9E,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,IAAI,CAC9B,kCAAkC,EAAE,YAAY,EAChD,EAAE,CACH,CAAC;YACF,QAAQ,CAAC,qBAAqB,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;QACvF,CAAC;gBAAS,CAAC;YACT,cAAc,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEhC,IAAI,OAAO;QACT,OAAO,CACL,cAAK,SAAS,EAAC,yBAAyB,YACtC,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAG,CAAC,CAAC,uBAAuB,CAAC,GAAO,GACnG,CACP,CAAC;IAEJ,MAAM,IAAI,GAAyE;QACjF,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAC,YAAY,IAAC,IAAI,EAAE,EAAE,GAAI,EAAE,IAAI,EAAE,IAAI,EAAE;QACjF,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,KAAC,iBAAiB,IAAC,IAAI,EAAE,EAAE,GAAI,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE;QAC9F,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAC,gBAAgB,IAAC,IAAI,EAAE,EAAE,GAAI,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE;QACvF;YACE,EAAE,EAAE,UAAU;YACd,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,KAAC,MAAM,IAAC,IAAI,EAAE,EAAE,GAAI;YAC1B,IAAI,EAAE,CAAC,KAAK,IAAI,IAAI,KAAK,cAAc;SACxC;QACD;YACE,EAAE,EAAE,WAAW;YACf,KAAK,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc;YAC5D,IAAI,EAAE,KAAC,MAAM,IAAC,IAAI,EAAE,EAAE,GAAI;YAC1B,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,QAAQ,CAAC;SAC1D;QACD,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,GAAI,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE;QAC5E,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,KAAC,aAAa,IAAC,IAAI,EAAE,EAAE,GAAI,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE;QACxF,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,GAAI,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE;QACxF,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,GAAI,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE;QAC7E,0EAA0E;QAC1E,4EAA4E;QAC5E,2EAA2E;QAC3E,2EAA2E;QAC3E,uEAAuE;QACvE,+DAA+D;QAC/D;YACE,EAAE,EAAE,UAAU;YACd,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,GAAI;YAC7B,IAAI,EAAE,CAAC,KAAK,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC;SAChD;QACD,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAC,KAAK,IAAC,IAAI,EAAE,EAAE,GAAI,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE;KACrE,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAE/C,OAAO,CACL,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAK,SAAS,EAAC,eAAe,aAC5B,eAAK,SAAS,EAAC,UAAU,aACvB,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,qBAAqB,EAC/B,OAAO,EAAE,GAAS,EAAE,GAAG,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,aAEvD,KAAC,WAAW,IAAC,IAAI,EAAE,EAAE,GAAI,iBAClB,EACT,eAAK,SAAS,EAAC,sBAAsB,aACnC,yBAAO,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,GAAQ,EAC3D,CAAC,KAAK,CAAC,CAAC,CAAC,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC,CAAC,IAAI,IAC3C,EACL,CAAC,KAAK,CAAC,CAAC,CAAC,CACR,eAAK,SAAS,EAAC,oBAAoB,aACjC,eAAM,SAAS,EAAC,UAAU,YAAE,GAAG,GAAQ,cAAG,eAAM,KAAK,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE,YAAG,IAAI,GAAQ,IACjG,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,EACN,MAAC,iBAAiB,IAAC,SAAS,EAAC,wBAAwB,aAClD,CAAC,KAAK,CAAC,CAAC,CAAC,CACR,8BACE,kBAAQ,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,sCAAsC,aACpE,KAAC,GAAG,IAAC,IAAI,EAAE,EAAE,GAAI,gBACV,EACT,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,sCAAsC,EAChD,OAAO,EAAE,GAAS,EAAE,CAAC,KAAK,eAAe,EAAE,EAC3C,QAAQ,EAAE,WAAW,aAErB,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,IACvD,EACT,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,qCAAqC,EAC/C,OAAO,EAAE,GAAS,EAAE,CAAC,KAAK,mBAAmB,EAAE,aAE/C,KAAC,MAAM,IAAC,IAAI,EAAE,EAAE,GAAI,OAAE,CAAC,CAAC,6BAA6B,CAAC,IAC/C,IACR,CACJ,CAAC,CAAC,CAAC,IAAI,EACR,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,0BAA0B,EACpC,OAAO,EAAE,CAAC,CAAC,EAAQ,EAAE;oCACnB,KAAK,UAAU,CAAC,CAAyB,CAAC,CAAC;gCAC7C,CAAC,aAED,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,GAAI,aACX,IACS,IAChB,EAEL,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,KAAK,IAAC,OAAO,EAAC,aAAa,EAAC,SAAS,EAAC,MAAM,YAC3C,KAAC,gBAAgB,cAAE,KAAK,GAAoB,GACtC,CACT,CAAC,CAAC,CAAC,IAAI,EACP,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,MAAM,YACvC,KAAC,gBAAgB,cAAE,IAAI,GAAoB,GACrC,CACT,CAAC,CAAC,CAAC,IAAI,EAER,eAAK,SAAS,EAAC,UAAU,aACvB,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,YACtD,cAAK,SAAS,EAAC,iBAAiB,YAChC,cAAK,SAAS,EAAC,UAAU,EAAC,IAAI,EAAC,SAAS,YACrC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACtB,kBAEE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,KAAK,mBACK,SAAS,KAAK,CAAC,CAAC,EAAE,EACjC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,CAAC,CAAC,EAAE,IAAI,WAAW,CAAC,EAC3D,OAAO,EAAE,GAAS,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,aAEtC,CAAC,CAAC,IAAI,EACN,CAAC,CAAC,KAAK,KARH,CAAC,CAAC,EAAE,CASF,CACV,CAAC,GACE,GACA,GACF,EAEN,eAAK,SAAS,EAAC,gBAAgB,aAC5B,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CACzB,eAAM,EAAE,EAAC,sBAAsB,EAAC,QAAQ,EAAE,UAAU,YAClD,eAAK,SAAS,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,aAgBxC,EAAE,CAAC,CAAC,CAAC,CACJ,KAAC,SAAS,IAAC,IAAI,EAAC,+BAA+B,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,GAAI,CAC7E,CAAC,CAAC,CAAC,IAAI,EACP,EAAE,CAAC,CAAC,CAAC,CACJ,eAAK,SAAS,EAAC,gCAAgC,aAC7C,KAAC,SAAS,IACR,IAAI,EAAC,4BAA4B,EACjC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GACnE,EACF,KAAC,SAAS,IACR,IAAI,EAAC,4BAA4B,EACjC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,GAC1E,IACE,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,EAAE,CAAC,CAAC,CAAC,CACJ,KAAC,kBAAkB,IACjB,GAAG,EAAE,cAAc,EACnB,SAAS,EAAE,EAAE,EACb,YAAY,EAAE,IAAI,EAClB,mBAAmB,EAAE,WAAW,EAChC,oBAAoB,EAAE,CAAC,IAAI,EAAQ,EAAE,CACnC,OAAO,CAAC;gDACN,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;gDAC5B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;6CAC7B,CAAC,EAEJ,2BAA2B,EAAE,CAAC,IAAI,EAAQ,EAAE,CAC1C,cAAc,CAAC;gDACb,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;gDAC5B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;6CAC7B,CAAC,GAEJ,CACH,CAAC,CAAC,CAAC,IAAI,EAER,0BACE,cAAK,SAAS,EAAC,WAAW,YAAE,CAAC,CAAC,gCAAgC,CAAC,GAAO,EACtE,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,EAAE,aAC1E,0BACE,KAAC,KAAK,IAAC,OAAO,EAAC,KAAK,YAAE,CAAC,CAAC,yBAAyB,CAAC,GAAS,EAC3D,KAAC,KAAK,IACJ,EAAE,EAAC,KAAK,EACR,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC7C,QAAQ,SACR,IACE,EACN,0BACE,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,YAAE,CAAC,CAAC,0BAA0B,CAAC,GAAS,EAC9D,KAAC,MAAM,IACL,EAAE,EAAC,OAAO,EACV,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CACpB,OAAO,CACL,CAAC,CAAC,MAAM,CAAC,KAKI,CACd,EAEH,QAAQ,EAAE,CAAC,KAAK,YAEf,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CACzB,iBAAiB,KAAK,EAAE,EAAE,YACvB,EAAE,IADQ,EAAE,CAEN,CACV,CAAC,GACK,IACL,EACN,0BACE,KAAC,KAAK,IAAC,OAAO,EAAC,MAAM,YAAE,CAAC,CAAC,gCAAgC,CAAC,GAAS,EACnE,KAAC,MAAM,IACL,EAAE,EAAC,MAAM,EACT,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CACpB,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAmC,CAAC,YAG5D,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACvB,iBAAgB,KAAK,EAAE,CAAC,YACrB,CAAC,IADS,CAAC,CAEL,CACV,CAAC,GACK,IACL,EACN,0BACE,KAAC,KAAK,IAAC,OAAO,EAAC,UAAU,YAAE,CAAC,CAAC,kCAAkC,CAAC,GAAS,EACzE,KAAC,MAAM,IACL,EAAE,EAAC,UAAU,EACb,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,KAAK,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,YAEnE,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC5B,iBAAQ,KAAK,EAAC,EAAE,YAAE,CAAC,CAAC,oCAAoC,CAAC,GAAU,CACpE,CAAC,CAAC,CAAC,CACF,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACvB,kBAAmB,KAAK,EAAE,CAAC,CAAC,EAAE,aAC3B,CAAC,CAAC,IAAI,EACN,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC,CAAC,CAAC,EAAE,KAFpD,CAAC,CAAC,EAAE,CAGR,CACV,CAAC,CACH,GACM,IACL,EACN,0BACE,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,YAAE,CAAC,CAAC,4BAA4B,CAAC,GAAS,EAClE,KAAC,MAAM,IACL,EAAE,EAAC,SAAS,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CACpB,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAA+B,CAAC,YAGpD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnB,iBAAgB,KAAK,EAAE,CAAC,YACrB,CAAC,IADS,CAAC,CAEL,CACV,CAAC,GACK,EACT,YAAG,SAAS,EAAC,UAAU,YAAE,CAAC,CAAC,iCAAiC,CAAC,GAAK,IAC9D,EACN,0BACE,KAAC,KAAK,IAAC,OAAO,EAAC,IAAI,YAAE,CAAC,CAAC,kCAAkC,CAAC,GAAS,EACnE,KAAC,KAAK,IACJ,EAAE,EAAC,IAAI,EACP,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,MAAM,EACX,GAAG,EAAC,GAAG,EACP,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GACtD,EACF,YAAG,SAAS,EAAC,UAAU,YAAE,CAAC,CAAC,uCAAuC,CAAC,GAAK,IACpE,IACF,IACF,EASL,KAAK,CAAC,CAAC,CAAC,CACP,8BACE,aAAI,SAAS,EAAC,QAAQ,GAAG,EACzB,0BACE,cAAK,SAAS,EAAC,WAAW,YAAE,CAAC,CAAC,wCAAwC,CAAC,GAAO,EAC9E,YAAG,SAAS,EAAC,UAAU,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,YAC9D,CAAC,CAAC,6CAA6C,CAAC,GAC/C,EACJ,cAAK,SAAS,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,YACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,eAAa,SAAS,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,aAChD,0BACE,KAAC,KAAK,IAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,YAAG,CAAC,CAAC,mCAAmC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,GAAS,EAC5F,KAAC,KAAK,IACJ,EAAE,EAAE,QAAQ,CAAC,EAAE,EACf,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EACd,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CACpB,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,GAEvD,IACE,EACN,0BACE,KAAC,KAAK,IAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,YAAG,CAAC,CAAC,0CAA0C,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,GAAS,EACnG,mBACE,EAAE,EAAE,QAAQ,CAAC,EAAE,EACf,IAAI,EAAE,CAAC,EACP,SAAS,EAAC,WAAW,EACrB,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EACrB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CACpB,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,GAE9D,IACE,KAtBE,CAAC,CAuBL,CACP,CAAC,GACE,IACF,IACL,CACJ,CAAC,CAAC,CAAC,IAAI,EAER,aAAI,SAAS,EAAC,QAAQ,GAAG,EAEzB,0BACE,eAAK,SAAS,EAAC,WAAW,aACvB,CAAC,CAAC,kCAAkC,CAAC,EACrC,EAAE,CAAC,CAAC,CAAC,CACJ,KAAC,SAAS,IACR,IAAI,EAAC,4BAA4B,EACjC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,GACtE,CACH,CAAC,CAAC,CAAC,IAAI,IACJ,EACN,KAAC,kBAAkB,IACjB,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,OAAO,GAChB,EACF,YAAG,SAAS,EAAC,UAAU,YAAE,CAAC,CAAC,uCAAuC,CAAC,GAAK,IACpE,IACF,GACD,CACR,CAAC,CAAC,CAAC,IAAI,EAEP,SAAS,KAAK,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,CAClC,KAAC,oBAAoB,IACnB,SAAS,EAAE,EAAE,EACb,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,gBAAgB,GAC1B,CACH,CAAC,CAAC,CAAC,IAAI,EAEP,SAAS,KAAK,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,CAC/B,eAAK,SAAS,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,aAKzC,KAAC,SAAS,IAAC,IAAI,EAAC,+BAA+B,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,GAAI,EAI5E,KAAC,SAAS,IAAC,IAAI,EAAC,8BAA8B,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,GAAI,IACvE,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,SAAS,KAAK,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,KAAC,eAAe,IAAC,SAAS,EAAE,EAAE,GAAI,CAAC,CAAC,CAAC,IAAI,EAE1E,SAAS,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CACjC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CACnB,KAAC,mBAAmB,IAAC,SAAS,EAAE,EAAE,GAAI,CACvC,CAAC,CAAC,CAAC,CACF,KAAC,kBAAkB,IAAC,SAAS,EAAE,EAAE,GAAI,CACtC,CACF,CAAC,CAAC,CAAC,IAAI,EAEP,SAAS,KAAK,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAC7B,8BACE,KAAC,SAAS,IACR,IAAI,EAAC,4BAA4B,EACjC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,GACnE,EACF,KAAC,cAAc,IAAC,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,GAAI,IACjD,CACJ,CAAC,CAAC,CAAC,IAAI,EAEP,SAAS,KAAK,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CACjC,eAAK,SAAS,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,aACzC,KAAC,mBAAmB,IAAC,SAAS,EAAE,EAAE,GAAI,EACrC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,CAC9C,KAAC,oBAAoB,IAAC,SAAS,EAAE,EAAE,GAAI,CACxC,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,SAAS,KAAK,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC,CACnC,8BACE,KAAC,SAAS,IACR,IAAI,EAAC,4BAA4B,EACjC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,IAAI,EAAE,GACvE,EACF,KAAC,kBAAkB,IAAC,SAAS,EAAE,EAAE,GAAI,IACpC,CACJ,CAAC,CAAC,CAAC,IAAI,EAEP,SAAS,KAAK,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,KAAC,mBAAmB,IAAC,SAAS,EAAE,EAAE,GAAI,CAAC,CAAC,CAAC,IAAI,EAE3E,SAAS,KAAK,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,CAChC,KAAC,SAAS,IAAC,IAAI,EAAC,yBAAyB,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,GAAI,CACvE,CAAC,CAAC,CAAC,IAAI,EAEP,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,KAAC,OAAO,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC,CAAC,CAAC,IAAI,IACjD,IACF,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,MAAM,EAAsC;IAChE,MAAM,GAAG,GAAG;QACV,MAAM,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE;QACtD,KAAK,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE;QACjD,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;KAChC,CAAC;IACX,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,eAAM,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,CAAC,CAAC,GAAG,CAAC,YAAG,CAAC,CAAC,KAAK,GAAQ,CAAC;AACrF,CAAC;AAED,SAAS,QAAQ,CAAC,IAA4B;IAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,OAAO,CAAC,EAAE,IAAI,EAAoC;IACzD,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,OAAO,CACL,eAAK,SAAS,EAAC,SAAS,EAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,aACzC,cAAK,SAAS,EAAC,WAAW,YAAE,CAAC,CAAC,yBAAyB,CAAC,GAAO,EAC/D,cAAK,SAAS,EAAC,UAAU,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,YAC9C,CAAC,CAAC,+BAA+B,CAAC,GAC/B,EACN,0BACE,KAAC,KAAK,IAAC,OAAO,EAAC,WAAW,YAAE,CAAC,CAAC,oCAAoC,CAAC,GAAS,EAC5E,KAAC,KAAK,IAAC,EAAE,EAAC,WAAW,EAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAI,IAClD,IACF,CACP,CAAC;AACJ,CAAC;AAmBD,SAAS,eAAe,CAAC,EAAE,SAAS,EAAyB;IAC3D,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAiB,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACpD,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,kEAAkE;YAClE,kEAAkE;YAClE,gEAAgE;YAChE,gEAAgE;YAChE,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,4BAA4B,SAAS,EAAE,CACxC,CAAC;YACF,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAC1G,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAEnB,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,OAAO,EAAE,CAAC;IACjB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,KAKN,EAAiB,EAAE;QAClB,wDAAwD;QACxD,MAAM,sBAAsB,GAA2B,EAAE,CAAC;QAC1D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,KAAK,SAAS;gBAAE,sBAAsB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QACxE,CAAC;QACD,IAAI,CAAC;YACH,MAAM,OAAO,GAA4B;gBACvC,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,sBAAsB;aACvB,CAAC;YACF,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC/B,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YACzD,CAAC;YACD,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC5B,OAAO,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACnD,CAAC;YACD,MAAM,SAAS,CAAC,IAAI,CAClB,kCAAkC,SAAS,WAAW,EACtD,OAAO,CACR,CAAC;YACF,OAAO,CAAC,CAAC,CAAC,uCAAuC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACxE,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,SAAiB,EAAE,GAAW,EAAiB,EAAE;QACtD,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,sCAAsC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YAAE,OAAO;QACzE,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,MAAM,CACpB,kCAAkC,SAAS,aAAa,SAAS,EAAE,CACpE,CAAC;YACF,OAAO,CAAC,CAAC,CAAC,uCAAuC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAC7D,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAC,MAAM,aACpB,KAAC,UAAU,cACT,KAAC,SAAS,cAAE,CAAC,CAAC,8BAA8B,CAAC,GAAa,GAC/C,EACb,MAAC,WAAW,IAAC,SAAS,EAAC,WAAW,aAC/B,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,KAAK,IAAC,OAAO,EAAC,aAAa,YAC1B,KAAC,gBAAgB,cAAE,KAAK,GAAoB,GACtC,CACT,CAAC,CAAC,CAAC,IAAI,EACP,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,KAAK,cACJ,KAAC,gBAAgB,cAAE,IAAI,GAAoB,GACrC,CACT,CAAC,CAAC,CAAC,IAAI,EAEP,OAAO,CAAC,CAAC,CAAC,CACT,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,uBAAuB,CAAC,GAAK,CAC9E,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC1B,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,8BAA8B,CAAC,GAAK,CACrF,CAAC,CAAC,CAAC,CACF,MAAC,KAAK,eACJ,KAAC,WAAW,cACV,MAAC,QAAQ,eACP,KAAC,SAAS,cAAE,CAAC,CAAC,mCAAmC,CAAC,GAAa,EAC/D,KAAC,SAAS,cAAE,CAAC,CAAC,0CAA0C,CAAC,GAAa,EACtE,KAAC,SAAS,cAAE,CAAC,CAAC,6CAA6C,CAAC,GAAa,EACzE,KAAC,SAAS,cAAE,CAAC,CAAC,qCAAqC,CAAC,GAAa,EACjE,KAAC,SAAS,IAAC,SAAS,EAAC,0BAA0B,YAAE,CAAC,CAAC,uCAAuC,CAAC,GAAa,IAC/F,GACC,EACd,KAAC,SAAS,cACP,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnB,MAAC,QAAQ,eACP,KAAC,SAAS,IAAC,SAAS,EAAC,WAAW,YAAE,CAAC,CAAC,GAAG,GAAa,EACpD,KAAC,SAAS,cACP,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC;iDACtC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;iDACxC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,GACV,EACZ,KAAC,SAAS,cAAE,CAAC,CAAC,aAAa,IAAI,GAAG,GAAa,EAC/C,KAAC,SAAS,cAAE,CAAC,CAAC,UAAU,IAAI,GAAG,GAAa,EAC5C,KAAC,SAAS,cACR,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,aAAa,EACrB,IAAI,EAAC,IAAI,EACT,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,YAE5C,CAAC,CAAC,sCAAsC,CAAC,GACnC,GACC,KAlBC,CAAC,CAAC,EAAE,CAmBR,CACZ,CAAC,GACQ,IACN,CACT,EAED,KAAC,mBAAmB,IAAC,QAAQ,EAAE,YAAY,GAAI,IACnC,IACT,CACR,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,EAC3B,QAAQ,GAQT;IACC,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEjD,OAAO,CACL,eACE,SAAS,EAAC,yCAAyC,EACnD,IAAI,EAAC,OAAO,gBACA,CAAC,CAAC,oCAAoC,CAAC,aAEnD,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,MAAM,YAAE,CAAC,CAAC,kCAAkC,CAAC,GAAS,EACrE,KAAC,KAAK,IAAC,EAAE,EAAC,MAAM,EAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,SAAG,IACnF,EACN,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,KAAK,IAAC,OAAO,EAAC,QAAQ,YAAE,CAAC,CAAC,yCAAyC,CAAC,GAAS,EAC9E,KAAC,KAAK,IACJ,EAAE,EAAC,QAAQ,EACX,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC/C,WAAW,EAAE,CAAC,CAAC,oDAAoD,CAAC,GACpE,IACE,EACN,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,QAAQ,YAAE,CAAC,CAAC,4CAA4C,CAAC,GAAS,EACjF,KAAC,KAAK,IACJ,EAAE,EAAC,QAAQ,EACX,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,MAAM,EACX,GAAG,EAAC,GAAG,EACP,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GACvD,IACE,EACN,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,QAAQ,YAAE,CAAC,CAAC,oCAAoC,CAAC,GAAS,EACzE,KAAC,KAAK,IACJ,EAAE,EAAC,QAAQ,EACX,IAAI,EAAC,QAAQ,EACb,GAAG,EAAC,GAAG,EACP,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GACpD,IACE,EACN,cAAK,SAAS,EAAC,eAAe,YAC5B,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE;wBACZ,KAAK,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;4BACjE,MAAM,CAAC,EAAE,CAAC,CAAC;4BACX,QAAQ,CAAC,EAAE,CAAC,CAAC;4BACb,gBAAgB,CAAC,EAAE,CAAC,CAAC;4BACrB,aAAa,CAAC,EAAE,CAAC,CAAC;wBACpB,CAAC,CAAC,CAAC;oBACL,CAAC,YAEA,CAAC,CAAC,mCAAmC,CAAC,GAChC,GACL,IACF,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,uEAAuE;AACvE,uEAAuE;AACvE,wEAAwE;AACxE,uCAAuC;AACvC,8EAA8E;AAE9E,MAAM,cAAc,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,WAAW,CAAU,CAAC;AAwB3E,qEAAqE;AACrE,SAAS,eAAe,CAAI,KAAU,EAAE,IAAY,EAAE,EAAU;IAC9D,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;IAC3B,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACrC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,cAAc,GAAG,UAAU,CAC/B,SAAS,cAAc,CAAC,EAAE,SAAS,EAAE,EAAE,GAAG;IAC1C,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,EAAE,CAAC,CAAC;IAC3D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAsB,EAAE,CAAC,CAAC;IAC9D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACtD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAC9C,0EAA0E;IAC1E,qCAAqC;IACrC,MAAM,WAAW,GAAG,MAAM,CAAS,EAAE,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAG,CAAC,IAAwB,EAAU,EAAE,CACpD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAEhF,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACpD,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,+DAA+D;YAC/D,gEAAgE;YAChE,iEAAiE;YACjE,kEAAkE;YAClE,iEAAiE;YACjE,+DAA+D;YAC/D,iEAAiE;YACjE,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAe5B,4BAA4B,SAAS,EAAE,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,OAAO;iBACnB,KAAK,EAAE;iBACP,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;iBACvC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACX,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,SAAS;gBACT,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE;gBACnB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;aAChD,CAAC,CAAC,CAAC;YACN,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;YACrC,SAAS,CACP,MAAM;iBACH,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;iBACvD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACX,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI;aAC3B,CAAC,CAAC,CACN,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC;QACzG,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAEnB,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,OAAO,EAAE,CAAC;IACjB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,KAAmB,EAAE,MAAc,EAAQ,EAAE;QAC5E,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAChB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACd,MAAM,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;YACrD,OAAO,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QAC7E,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,KAAmB,EAAQ,EAAE;QAC3D,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,0DAA0D;IAC1D,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,IAAY,EAAE,EAAU,EAAQ,EAAE;QAC9D,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,KAAa,EAAQ,EAAE;QACrD,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;YACzD,OAAO,IAAI,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,wEAAwE;IACxE,0DAA0D;IAC1D,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,OAAe,EAAiB,EAAE;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,kCAAkC,SAAS,UAAU,EAAE;gBAC1E,OAAO;gBACP,MAAM,EAAE,EAAE;aACX,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC;YAChD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC;QACxG,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,MAAc,EAAiB,EAAE;QACtC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC;YAAE,OAAO;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,MAAM,CAAC,kCAAkC,SAAS,YAAY,MAAM,EAAE,CAAC,CAAC;YACxF,OAAO,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC;YACnD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAC3G,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,2EAA2E;IAC3E,0EAA0E;IAC1E,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,IAAI,IAAI,CAA4C,CAAC;QACpG,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACxF,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAC1B,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAClE,CAAC;QACF,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YACzB,MAAM,SAAS,CAAC,KAAK,CACnB,kCAAkC,SAAS,YAAY,EAAE,CAAC,EAAE,eAAe,EAC3E,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CACtB,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC/C,MAAM,SAAS,CAAC,GAAG,CAAC,kCAAkC,SAAS,gBAAgB,EAAE;gBAC/E,qBAAqB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;aAChD,CAAC,CAAC;QACL,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAEhC,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnE,MAAM,QAAQ,GAAG,IAAI,IAAI,OAAO,CAAC;IAEjC,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAC,MAAM,aACpB,KAAC,UAAU,cACT,KAAC,SAAS,cAAE,CAAC,CAAC,6BAA6B,CAAC,GAAa,GAC9C,EACb,MAAC,WAAW,IAAC,SAAS,EAAC,WAAW,aAC/B,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,KAAK,IAAC,OAAO,EAAC,aAAa,YAC1B,KAAC,gBAAgB,cAAE,KAAK,GAAoB,GACtC,CACT,CAAC,CAAC,CAAC,IAAI,EACP,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,KAAK,cACJ,KAAC,gBAAgB,cAAE,IAAI,GAAoB,GACrC,CACT,CAAC,CAAC,CAAC,IAAI,EAEP,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC/B,eAAK,SAAS,EAAC,WAAW,aACxB,YAAG,SAAS,EAAC,qBAAqB,YAAE,CAAC,CAAC,2CAA2C,CAAC,GAAK,EACvF,YAAG,SAAS,EAAC,+BAA+B,YACzC,CAAC,CAAC,0CAA0C,CAAC,GAC5C,EACJ,cAAK,SAAS,EAAC,sBAAsB,YAClC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAClB,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CACrB,gBAEE,GAAG,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAChC,SAAS,EAAC,uCAAuC,EACjD,KAAK,UAHA,GAAG,CAAC,EAAE,CAIX,CACH,CAAC,CAAC,CAAC,CACF,cAEE,GAAG,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAChC,GAAG,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,EACtB,SAAS,EAAC,uCAAuC,IAH5C,GAAG,CAAC,EAAE,CAIX,CACH,CACF,GACG,IACF,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,OAAO,CAAC,CAAC,CAAC,CACT,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,uBAAuB,CAAC,GAAK,CAC9E,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACvB,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,6BAA6B,CAAC,GAAK,CACpF,CAAC,CAAC,CAAC,CACF,8BACE,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,gCAAgC,CAAC,GAAK,EACtF,MAAC,KAAK,eACJ,KAAC,WAAW,cACV,MAAC,QAAQ,eACP,KAAC,SAAS,IAAC,SAAS,EAAC,KAAK,GAAG,EAC7B,KAAC,SAAS,cAAE,CAAC,CAAC,sCAAsC,CAAC,GAAa,EACjE,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAC7B,KAAC,SAAS,IAAa,SAAS,EAAC,aAAa,YAC3C,CAAC,CAAC,+BAA+B,KAAK,EAAE,CAAC,IAD5B,KAAK,CAET,CACb,CAAC,EACF,KAAC,SAAS,cAAE,CAAC,CAAC,sCAAsC,CAAC,GAAa,EAClE,KAAC,SAAS,IAAC,SAAS,EAAC,qCAAqC,YACvD,CAAC,CAAC,sCAAsC,CAAC,GAChC,IACH,GACC,EACd,KAAC,SAAS,cACP,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAC1B,KAAC,UAAU,IAET,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,CAAC,MAAM,EACnB,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,WAAW,EAC1B,YAAY,EAAE,UAAU,EACxB,MAAM,EAAE,QAAQ,EAChB,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE;gDAClB,SAAS,CAAC,OAAO,GAAG,EAAE,CAAC;4CACzB,CAAC,EACD,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EACrC,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,GAAG,EAAE;gDACd,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;4CAC3B,CAAC,EACD,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,YAAY,IAjBjB,IAAI,CAAC,EAAE,CAkBZ,CACH,CAAC,GACQ,IACN,IACP,CACJ,EAED,KAAC,uBAAuB,IAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,GAAI,IAC3D,EAEb,UAAU,CAAC,CAAC,CAAC,CACZ,eACE,SAAS,EAAC,qEAAqE,EAC/E,IAAI,EAAC,QAAQ,gBACF,MAAM,gBACL,CAAC,CAAC,qCAAqC,CAAC,EACpD,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,aAElC,cACE,GAAG,EAAE,UAAU,EACf,GAAG,EAAE,CAAC,CAAC,qCAAqC,CAAC,EAC7C,SAAS,EAAC,yCAAyC,EACnD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,GACnC,EACF,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,qBAAqB,EAC/B,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAChD,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,YAEjC,CAAC,CAAC,qCAAqC,CAAC,GAClC,IACL,CACP,CAAC,CAAC,CAAC,IAAI,IACH,CACR,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,SAAS,UAAU,CAAC,EAClB,IAAI,EACJ,KAAK,EACL,KAAK,EACL,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,MAAM,EACN,WAAW,EACX,UAAU,EACV,MAAM,EACN,SAAS,EACT,SAAS,EACT,QAAQ,GAeT;IACC,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAExE,OAAO,CACL,MAAC,QAAQ,IACP,SAAS,EAAE,CAAC,QAAQ,EACpB,WAAW,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EACvC,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAC3B,SAAS,EAAE,SAAS,aAEpB,KAAC,SAAS,IAAC,SAAS,EAAC,KAAK,YACxB,eACE,SAAS,EAAC,4DAA4D,EACtE,KAAK,EAAE,CAAC,CAAC,gCAAgC,CAAC,iCAG1C,KAAC,YAAY,IAAC,SAAS,EAAC,SAAS,GAAG,GAC/B,GACG,EACZ,KAAC,SAAS,cACP,GAAG,CAAC,CAAC,CAAC,CACL,IAAI,CAAC,KAAK,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAC7B,gBAAO,GAAG,EAAE,GAAG,EAAE,SAAS,EAAC,uCAAuC,EAAC,KAAK,SAAG,CAC5E,CAAC,CAAC,CAAC,CACF,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,0BAA0B,EACpC,KAAK,EAAE,CAAC,CAAC,oCAAoC,CAAC,EAC9C,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,YAE7B,cAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAC,EAAE,EAAC,SAAS,EAAC,gCAAgC,GAAG,GAC5D,CACV,CACF,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,+BAA+B,uBAAS,CACzD,GACS,EACX,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC5C,OAAO,CACL,KAAC,SAAS,IAAa,SAAS,EAAC,aAAa,YAC5C,gBACE,IAAI,EAAC,OAAO,EACZ,IAAI,EAAE,iBAAiB,KAAK,EAAE,EAC9B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,gBACN,CAAC,CAAC,+BAA+B,KAAK,EAAE,CAAC,EACrD,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC,EAClB,OAAO,EAAE,GAAG,EAAE,CACZ,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,GAE/D,IAXY,KAAK,CAYT,CACb,CAAC;YACJ,CAAC,CAAC,EACF,MAAC,SAAS,IAAC,SAAS,EAAC,mBAAmB,aAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,cAAc,EAChF,MAAC,SAAS,IAAC,SAAS,EAAC,wCAAwC,aAC3D,KAAC,mBAAmB,IAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,EACxC,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,EAC1C,SAAS,EAAE,KAAK,KAAK,CAAC,EACtB,WAAW,EAAE,KAAK,KAAK,KAAK,GAAG,CAAC,GAChC,EACF,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,aAAa,EACrB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,YAEpC,CAAC,CAAC,qCAAqC,CAAC,GAClC,IACC,IACH,CACZ,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,EAC/B,QAAQ,EACR,QAAQ,GAIT;IACC,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE3C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAG,CAAC,CAA6B,EAAQ,EAAE;QACrD,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjB,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC9B,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,yBAAyB,EAAC,IAAI,EAAC,OAAO,gBAAa,CAAC,CAAC,gCAAgC,CAAC,aAClG,UAAU,CAAC,CAAC,CAAC,CACZ,KAAC,WAAW,IACV,gBAAgB,EAAC,QAAQ,EACzB,WAAW,QACX,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,GACnC,CACH,CAAC,CAAC,CAAC,IAAI,EACR,eAAK,SAAS,EAAC,2BAA2B,aAC1C,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,KAAK,IAAC,OAAO,EAAC,QAAQ,YAAE,CAAC,CAAC,mCAAmC,CAAC,GAAS,EACxE,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,KAAK,IACJ,EAAE,EAAC,QAAQ,EACX,KAAK,EAAE,cAAc,IAAI,OAAO,EAChC,QAAQ,QACR,WAAW,EAAE,CAAC,CAAC,qCAAqC,CAAC,GACrD,EACF,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,YACjF,CAAC,CAAC,2CAA2C,CAAC,GACxC,IACL,IACF,EACN,cAAK,SAAS,EAAC,gBAAgB,YAC7B,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,QAAQ,IAAI,CAAC,OAAO,EAC9B,OAAO,EAAE,GAAG,EAAE;gCACZ,IAAI,CAAC,OAAO;oCAAE,OAAO;gCACrB,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;oCAC/B,UAAU,CAAC,EAAE,CAAC,CAAC;oCACf,iBAAiB,CAAC,IAAI,CAAC,CAAC;gCAC1B,CAAC,CAAC,CAAC;4BACL,CAAC,YAEA,CAAC,CAAC,kCAAkC,CAAC,GAC/B,GACL,IACA,IACF,CACP,CAAC;AACJ,CAAC;AA2BD,SAAS,kBAAkB,CAAC,EAAE,SAAS,EAAyB;IAC9D,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAoB,EAAE,CAAC,CAAC;IACtE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAwB,EAAE,CAAC,CAAC;IAC9D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACpD,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC3C,SAAS,CAAC,GAAG,CAkBV,4BAA4B,SAAS,EAAE,CAAC;gBAC3C,SAAS,CAAC,GAAG,CACX,wCAAwC,CACzC;aACF,CAAC,CAAC;YACH,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;YACxD,cAAc,CACZ,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC5B,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,SAAS;gBACT,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE;gBACnB,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE;gBAC3B,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,KAAK,EAAE;oBACL,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG;oBAChB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ;oBAC1B,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ;iBAC3B;gBACD,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;aAC/C,CAAC,CAAC,CACJ,CAAC;YACF,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC7G,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAEnB,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,OAAO,EAAE,CAAC;IACjB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,KAKN,EAAiB,EAAE;QAClB,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,kCAAkC,SAAS,cAAc,EAAE;gBAC9E,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;gBACxC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACjE,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC,CAAC;YACpD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,YAAoB,EAAE,IAAY,EAAiB,EAAE;QAC1D,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,yCAAyC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAAE,OAAO;QAC7E,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,MAAM,CACpB,kCAAkC,SAAS,gBAAgB,YAAY,EAAE,CAC1E,CAAC;YACF,OAAO,CAAC,CAAC,CAAC,0CAA0C,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACjE,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAC/G,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAC,MAAM,aACpB,KAAC,UAAU,cACT,KAAC,SAAS,cAAE,CAAC,CAAC,iCAAiC,CAAC,GAAa,GAClD,EACb,MAAC,WAAW,IAAC,SAAS,EAAC,WAAW,aAC/B,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,KAAK,IAAC,OAAO,EAAC,aAAa,YAC1B,KAAC,gBAAgB,cAAE,KAAK,GAAoB,GACtC,CACT,CAAC,CAAC,CAAC,IAAI,EACP,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,KAAK,cACJ,KAAC,gBAAgB,cAAE,IAAI,GAAoB,GACrC,CACT,CAAC,CAAC,CAAC,IAAI,EAEP,OAAO,CAAC,CAAC,CAAC,CACT,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,uBAAuB,CAAC,GAAK,CAC9E,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC7B,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,iCAAiC,CAAC,GAAK,CACxF,CAAC,CAAC,CAAC,CACF,MAAC,KAAK,eACJ,KAAC,WAAW,cACV,MAAC,QAAQ,eACP,KAAC,SAAS,cAAE,CAAC,CAAC,uCAAuC,CAAC,GAAa,EACnE,KAAC,SAAS,cAAE,CAAC,CAAC,uCAAuC,CAAC,GAAa,EACnE,KAAC,SAAS,cAAE,CAAC,CAAC,8CAA8C,CAAC,GAAa,EAC1E,KAAC,SAAS,cAAE,CAAC,CAAC,uCAAuC,CAAC,GAAa,EACnE,KAAC,SAAS,IAAC,SAAS,EAAC,0BAA0B,YAAE,CAAC,CAAC,0CAA0C,CAAC,GAAa,IAClG,GACC,EACd,KAAC,SAAS,cACP,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACxB,MAAC,QAAQ,eACP,KAAC,SAAS,cAAE,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,GAAG,GAAa,EACzE,KAAC,SAAS,IAAC,SAAS,EAAC,aAAa,YAAE,GAAG,CAAC,IAAI,GAAa,EACzD,KAAC,SAAS,IAAC,SAAS,EAAC,uBAAuB,YACzC,GAAG,CAAC,WAAW,IAAI,GAAG,GACb,EACZ,KAAC,SAAS,cACP,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAChB,YACE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EACnB,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,UAAU,EACd,SAAS,EAAC,mBAAmB,YAE5B,GAAG,CAAC,KAAK,CAAC,QAAQ,GACjB,CACL,CAAC,CAAC,CAAC,CACF,GAAG,CACJ,GACS,EACZ,KAAC,SAAS,cACR,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,aAAa,EACrB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,YAEjD,CAAC,CAAC,yCAAyC,CAAC,GACtC,GACC,KA7BC,GAAG,CAAC,EAAE,CA8BV,CACZ,CAAC,GACQ,IACN,CACT,EAED,KAAC,sBAAsB,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,GAAI,IACpD,IACT,CACR,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,EAC9B,KAAK,EACL,QAAQ,GAST;IACC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3C,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC1E,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAEpC,OAAO,CACL,eAAK,SAAS,EAAC,yBAAyB,EAAC,IAAI,EAAC,OAAO,gBAAa,CAAC,CAAC,oCAAoC,CAAC,aACtG,UAAU,CAAC,CAAC,CAAC,CACZ,KAAC,WAAW,IACV,WAAW,QACX,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE;oBACpB,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACjB,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAC9B,aAAa,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,GACnC,CACH,CAAC,CAAC,CAAC,IAAI,EACR,eAAK,SAAS,EAAC,2BAA2B,aAC1C,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,QAAQ,YAAE,CAAC,CAAC,uCAAuC,CAAC,GAAS,EAC5E,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,KAAK,IACJ,EAAE,EAAC,QAAQ,EACX,KAAK,EAAE,cAAc,IAAI,OAAO,EAChC,QAAQ,QACR,WAAW,EAAE,CAAC,CAAC,yCAAyC,CAAC,GACzD,EACF,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,YACjF,CAAC,CAAC,+CAA+C,CAAC,GAC5C,IACL,IACF,EACN,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,YAAE,CAAC,CAAC,sCAAsC,CAAC,GAAS,EAC1E,MAAC,MAAM,IACL,EAAE,EAAC,OAAO,EACV,KAAK,EAAE,gBAAgB,EACvB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,aAE1D,iBAAQ,KAAK,EAAC,EAAE,uBAAW,EAC1B,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAClB,iBAAqB,KAAK,EAAE,GAAG,CAAC,EAAE,YAC/B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,IAAI,IADnB,GAAG,CAAC,EAAE,CAEV,CACV,CAAC,IACK,IACL,EACN,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,YAAE,CAAC,CAAC,sCAAsC,CAAC,GAAS,EAC1E,KAAC,KAAK,IACJ,EAAE,EAAC,OAAO,EACV,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC9C,WAAW,EAAE,CAAC,CAAC,iDAAiD,CAAC,GACjE,IACE,EACN,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,YAAE,CAAC,CAAC,6CAA6C,CAAC,GAAS,EACjF,KAAC,KAAK,IACJ,EAAE,EAAC,OAAO,EACV,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACrD,WAAW,EAAE,CAAC,CAAC,wDAAwD,CAAC,GACxE,IACE,EACN,cAAK,SAAS,EAAC,eAAe,YAC5B,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE;gCACZ,IAAI,CAAC,OAAO,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI;oCAAE,OAAO;gCACnD,KAAK,QAAQ,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;oCACxE,UAAU,CAAC,EAAE,CAAC,CAAC;oCACf,iBAAiB,CAAC,IAAI,CAAC,CAAC;oCACxB,mBAAmB,CAAC,EAAE,CAAC,CAAC;oCACxB,OAAO,CAAC,EAAE,CAAC,CAAC;oCACZ,cAAc,CAAC,EAAE,CAAC,CAAC;gCACrB,CAAC,CAAC,CAAC;4BACL,CAAC,YAEA,CAAC,CAAC,sCAAsC,CAAC,GACnC,GACL,IACA,IACF,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,sEAAsE;AACtE,mEAAmE;AACnE,kEAAkE;AAClE,2EAA2E;AAC3E,8EAA8E;AAE9E,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAU,CAAC;AAmBjE,SAAS,eAAe,CACtB,IAA+C,EAC/C,QAAgB;IAEhB,IAAI,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAC;IAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;AAC7D,CAAC;AAED,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAEpC,SAAS,mBAAmB,CAAC,EAAE,SAAS,EAAyB;IAC/D,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,EAAE,CAAC,CAAC;IAC3D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAC5C,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAChB,CAAC;IACF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACpD,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,kCAAkC,SAAS,QAAQ,CACpD,CAAC;YACF,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAEnB,mEAAmE;YACnE,oEAAoE;YACpE,mEAAmE;YACnE,6CAA6C;YAC7C,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YACpF,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA+B,CAAC;YACxD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,IAAI,IAAI,GAAG,CAAC,CAAC;gBACb,kEAAkE;gBAClE,+BAA+B;gBAC/B,SAAS,CAAC;oBACR,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAG/B,4CAA4C,EAAE;wBAC/C,GAAG,EAAE,eAAe;wBACpB,IAAI;wBACJ,QAAQ,EAAE,uBAAuB;qBAClC,CAAC,CAAC;oBACH,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI;wBAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;oBAClD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO;wBAAE,MAAM;oBACrC,IAAI,IAAI,CAAC,CAAC;oBACV,IAAI,IAAI,GAAG,EAAE;wBAAE,MAAM;gBACvB,CAAC;YACH,CAAC;YACD,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC;QACvG,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAEnB,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,OAAO,EAAE,CAAC;IACjB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,KAAkD,EAAiB,EAAE;QAC1E,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAAC,kCAAkC,SAAS,QAAQ,EAAE;gBACxE,KAAK,EAAE,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;aACtE,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,CAAC,iCAAiC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACpE,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC;QACtG,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,MAAc,EAAiB,EAAE;QACtC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC;YAAE,OAAO;QAC7D,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,MAAM,CAAC,kCAAkC,SAAS,UAAU,MAAM,EAAE,CAAC,CAAC;YACtF,OAAO,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC;QACzG,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE;QAC1B,MAAM,MAAM,GAAyC;YACnD,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,EAAE;SACf,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAC,MAAM,aACpB,KAAC,UAAU,cACT,KAAC,SAAS,cAAE,CAAC,CAAC,2BAA2B,CAAC,GAAa,GAC5C,EACb,MAAC,WAAW,IAAC,SAAS,EAAC,WAAW,aAC/B,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,KAAK,IAAC,OAAO,EAAC,aAAa,YAC1B,KAAC,gBAAgB,cAAE,KAAK,GAAoB,GACtC,CACT,CAAC,CAAC,CAAC,IAAI,EACP,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,KAAK,cACJ,KAAC,gBAAgB,cAAE,IAAI,GAAoB,GACrC,CACT,CAAC,CAAC,CAAC,IAAI,EAEP,OAAO,CAAC,CAAC,CAAC,CACT,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,uBAAuB,CAAC,GAAK,CAC9E,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,WAAW,YACvB,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACxB,eAAgB,SAAS,EAAC,WAAW,aACnC,cAAI,SAAS,EAAC,6CAA6C,aACxD,CAAC,CAAC,4BAA4B,IAAI,EAAE,CAAC,QAAI,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,SAC1D,EACJ,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC3B,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,2BAA2B,CAAC,GAAK,CAClF,CAAC,CAAC,CAAC,CACF,MAAC,KAAK,eACJ,KAAC,WAAW,cACV,MAAC,QAAQ,eACP,KAAC,SAAS,cAAE,CAAC,CAAC,mCAAmC,CAAC,GAAa,EAC/D,KAAC,SAAS,cAAE,CAAC,CAAC,gCAAgC,CAAC,GAAa,EAC5D,KAAC,SAAS,cAAE,CAAC,CAAC,qCAAqC,CAAC,GAAa,EACjE,KAAC,SAAS,IAAC,SAAS,EAAC,0BAA0B,YAAE,CAAC,CAAC,oCAAoC,CAAC,GAAa,IAC5F,GACC,EACd,KAAC,SAAS,cACP,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gDACzB,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gDACrD,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC;gDAC1B,MAAM,UAAU,GAAG,MAAM,EAAE,MAAM,KAAK,UAAU,CAAC;gDACjD,OAAO,CACL,MAAC,QAAQ,eACP,KAAC,SAAS,cACR,eAAK,SAAS,EAAC,yBAAyB,aACtC,eACE,SAAS,EACP,SAAS,IAAI,UAAU,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,YAGvD,MAAM;4EACL,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;4EAC3C,CAAC,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GACrC,EACN,SAAS,CAAC,CAAC,CAAC,CACX,eAAM,SAAS,EAAC,0EAA0E,YACvF,CAAC,CAAC,mCAAmC,CAAC,GAClC,CACR,CAAC,CAAC,CAAC,IAAI,EACP,UAAU,CAAC,CAAC,CAAC,CACZ,eAAM,SAAS,EAAC,0EAA0E,YACvF,CAAC,CAAC,oCAAoC,CAAC,GACnC,CACR,CAAC,CAAC,CAAC,IAAI,IACJ,GACI,EACZ,KAAC,SAAS,IAAC,SAAS,EAAC,mBAAmB,YACrC,MAAM,EAAE,GAAG,IAAI,GAAG,GACT,EACZ,KAAC,SAAS,cAAE,IAAI,CAAC,QAAQ,GAAa,EACtC,KAAC,SAAS,cACR,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,aAAa,EACrB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,YAExC,CAAC,CAAC,mCAAmC,CAAC,GAChC,GACC,KArCC,IAAI,CAAC,EAAE,CAsCX,CACZ,CAAC;4CACJ,CAAC,CAAC,GACQ,IACN,CACT,KAjEO,IAAI,CAkER,CACP,CAAC,GACE,CACP,EAED,KAAC,uBAAuB,IAAC,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,SAAS,GAAI,IACnE,IACT,CACR,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,EAC/B,QAAQ,EACR,eAAe,GAIhB;IACC,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC5E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAW,SAAS,CAAC,CAAC;IAEtD,OAAO,CACL,eACE,SAAS,EAAC,yCAAyC,EACnD,IAAI,EAAC,OAAO,gBACA,CAAC,CAAC,8BAA8B,CAAC,aAE7C,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,YAAE,CAAC,CAAC,mCAAmC,CAAC,GAAS,EACzE,KAAC,aAAa,IACZ,EAAE,EAAC,SAAS,EACZ,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,kBAAkB,EAC5B,UAAU,EAAE,CAAC,eAAe,CAAC,EAC7B,WAAW,EAAE,CAAC,CAAC,6CAA6C,CAAC,EAC7D,SAAS,EAAE,CAAC,CAAC,mCAAmC,CAAC,GACjD,IACE,EACN,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,YAAE,CAAC,CAAC,gCAAgC,CAAC,GAAS,EACpE,KAAC,MAAM,IAAC,EAAE,EAAC,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAiB,CAAC,YACvF,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACrB,iBAAgB,KAAK,EAAE,CAAC,YACrB,CAAC,CAAC,4BAA4B,CAAC,EAAE,CAAC,IADxB,CAAC,CAEL,CACV,CAAC,GACK,IACL,EACN,cAAK,SAAS,EAAC,eAAe,YAC5B,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,eAAe,KAAK,IAAI,EAClC,OAAO,EAAE,GAAG,EAAE;wBACZ,IAAI,eAAe,KAAK,IAAI;4BAAE,OAAO;wBACrC,KAAK,QAAQ,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;4BACjD,kBAAkB,CAAC,IAAI,CAAC,CAAC;wBAC3B,CAAC,CAAC,CAAC;oBACL,CAAC,YAEA,CAAC,CAAC,gCAAgC,CAAC,GAC7B,GACL,IACF,CACP,CAAC;AACJ,CAAC;AAiBD,SAAS,mBAAmB,CAAC,EAAE,SAAS,EAAyB;IAC/D,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,EAAE,CAAC,CAAC;IAC3D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACpD,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,kCAAkC,SAAS,gBAAgB,CAC5D,CAAC;YACF,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC;QACzG,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAEnB,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,OAAO,EAAE,CAAC;IACjB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,KAAmD,EAAiB,EAAE;QAC3E,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;YACtC,QAAQ,CAAC,CAAC,CAAC,6CAA6C,CAAC,CAAC,CAAC;YAC3D,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAClB,kCAAkC,SAAS,gBAAgB,EAC3D,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,QAAQ,EAAE,GAAG,EAAE,CACxD,CAAC;YACF,OAAO,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC;YAChD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC;QACxG,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,MAAc,EAAiB,EAAE;QACtC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC;YAAE,OAAO;QAC/D,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,MAAM,CACpB,kCAAkC,SAAS,kBAAkB,MAAM,EAAE,CACtE,CAAC;YACF,OAAO,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC;YACnD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAC,MAAM,aACpB,KAAC,UAAU,cACT,KAAC,SAAS,cAAE,CAAC,CAAC,6BAA6B,CAAC,GAAa,GAC9C,EACb,MAAC,WAAW,IAAC,SAAS,EAAC,WAAW,aAC/B,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,KAAK,IAAC,OAAO,EAAC,aAAa,YAC1B,KAAC,gBAAgB,cAAE,KAAK,GAAoB,GACtC,CACT,CAAC,CAAC,CAAC,IAAI,EACP,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,KAAK,cACJ,KAAC,gBAAgB,cAAE,IAAI,GAAoB,GACrC,CACT,CAAC,CAAC,CAAC,IAAI,EAEP,OAAO,CAAC,CAAC,CAAC,CACT,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,uBAAuB,CAAC,GAAK,CAC9E,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACvB,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,6BAA6B,CAAC,GAAK,CACpF,CAAC,CAAC,CAAC,CACF,MAAC,KAAK,eACJ,KAAC,WAAW,cACV,MAAC,QAAQ,eACP,KAAC,SAAS,cAAE,CAAC,CAAC,oCAAoC,CAAC,GAAa,EAChE,KAAC,SAAS,cAAE,CAAC,CAAC,uCAAuC,CAAC,GAAa,EACnE,KAAC,SAAS,cAAE,CAAC,CAAC,uCAAuC,CAAC,GAAa,EACnE,KAAC,SAAS,IAAC,SAAS,EAAC,0BAA0B,YAAE,CAAC,CAAC,sCAAsC,CAAC,GAAa,IAC9F,GACC,EACd,KAAC,SAAS,cACP,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,MAAC,QAAQ,eACP,KAAC,SAAS,IAAC,SAAS,EAAC,mBAAmB,YAAE,IAAI,CAAC,cAAc,GAAa,EAC1E,KAAC,SAAS,cAAE,IAAI,CAAC,QAAQ,GAAa,EACtC,KAAC,SAAS,cAAE,IAAI,CAAC,QAAQ,GAAa,EACtC,KAAC,SAAS,cACR,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,aAAa,EACrB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,YAExC,CAAC,CAAC,qCAAqC,CAAC,GAClC,GACC,KAbC,IAAI,CAAC,EAAE,CAcX,CACZ,CAAC,GACQ,IACN,CACT,EAED,KAAC,uBAAuB,IAAC,QAAQ,EAAE,YAAY,GAAI,IACvC,IACT,CACR,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,EAC/B,QAAQ,GAGT;IACC,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAE9C,OAAO,CACL,eACE,SAAS,EAAC,yCAAyC,EACnD,IAAI,EAAC,OAAO,gBACA,CAAC,CAAC,gCAAgC,CAAC,aAE/C,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,KAAK,IAAC,OAAO,EAAC,QAAQ,YAAE,CAAC,CAAC,oCAAoC,CAAC,GAAS,EACzE,KAAC,aAAa,IACZ,EAAE,EAAC,QAAQ,EACX,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,cAAc,IAAI,IAAI,EAC7B,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,iBAAiB,CAAC,CAAC,IAAI,EAAE,CAAC,GACjD,IACE,EACN,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,WAAW,YAAE,CAAC,CAAC,uCAAuC,CAAC,GAAS,EAC/E,KAAC,KAAK,IACJ,EAAE,EAAC,WAAW,EACd,IAAI,EAAC,QAAQ,EACb,GAAG,EAAC,GAAG,EACP,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAClD,IACE,EACN,cAAK,SAAS,EAAC,eAAe,YAC5B,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE;wBACZ,IAAI,CAAC,cAAc;4BAAE,OAAO;wBAC5B,KAAK,QAAQ,CAAC,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;4BACpD,iBAAiB,CAAC,EAAE,CAAC,CAAC;4BACtB,WAAW,CAAC,GAAG,CAAC,CAAC;wBACnB,CAAC,CAAC,CAAC;oBACL,CAAC,YAEA,CAAC,CAAC,kCAAkC,CAAC,GAC/B,GACL,IACF,CACP,CAAC;AACJ,CAAC;AAyBD,SAAS,kBAAkB,CAAC,EAAE,SAAS,EAAyB;IAC9D,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAoB,EAAE,CAAC,CAAC;IAC1D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACpD,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,kCAAkC,SAAS,eAAe,CAC3D,CAAC;YACF,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC;QACxG,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAEnB,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,OAAO,EAAE,CAAC;IACjB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,gBAAgB,GAAG,WAAW,CAClC,KAAK,EAAE,KAAiE,EAAiB,EAAE;QACzF,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;YACtC,QAAQ,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAClB,kCAAkC,SAAS,eAAe,EAC1D;gBACE,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE;gBAC7B,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,WAAW,EAAE,GAAG;aACjB,CACF,CAAC;YACF,OAAO,CAAC,CAAC,CAAC,sCAAsC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACzE,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,MAAM,gBAAgB,GAAG,WAAW,CAClC,KAAK,EAAE,MAAc,EAAiB,EAAE;QACtC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC;YAAE,OAAO;QAClE,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,MAAM,CACpB,kCAAkC,SAAS,iBAAiB,MAAM,EAAE,CACrE,CAAC;YACF,OAAO,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC,CAAC;YACtD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC,CAAC;QAC9G,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,MAAM,eAAe,GAAG,WAAW,CACjC,KAAK,EAAE,MAAc,EAAE,eAAuB,EAAiB,EAAE;QAC/D,IAAI,CAAC,eAAe;YAAE,OAAO;QAC7B,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,CAClB,kCAAkC,SAAS,iBAAiB,MAAM,UAAU,EAC5E,EAAE,eAAe,EAAE,CACpB,CAAC;YACF,OAAO,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC,CAAC;YACrD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,MAAM,kBAAkB,GAAG,WAAW,CACpC,KAAK,EAAE,MAAc,EAAE,QAAgB,EAAiB,EAAE;QACxD,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC;YAAE,OAAO;QACpE,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,MAAM,CACpB,kCAAkC,SAAS,iBAAiB,MAAM,YAAY,QAAQ,EAAE,CACzF,CAAC;YACF,OAAO,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC,CAAC;YACxD,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC,CAAC;QAChH,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CACxB,CAAC;IAEF,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAC,MAAM,aACpB,KAAC,UAAU,cACT,KAAC,SAAS,cAAE,CAAC,CAAC,4BAA4B,CAAC,GAAa,GAC7C,EACb,MAAC,WAAW,IAAC,SAAS,EAAC,WAAW,aAC/B,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,KAAK,IAAC,OAAO,EAAC,aAAa,YAC1B,KAAC,gBAAgB,cAAE,KAAK,GAAoB,GACtC,CACT,CAAC,CAAC,CAAC,IAAI,EACP,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,KAAK,cACJ,KAAC,gBAAgB,cAAE,IAAI,GAAoB,GACrC,CACT,CAAC,CAAC,CAAC,IAAI,EAEP,OAAO,CAAC,CAAC,CAAC,CACT,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,uBAAuB,CAAC,GAAK,CAC9E,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACvB,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,4BAA4B,CAAC,GAAK,CACnF,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,WAAW,YACvB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,KAAC,cAAc,IAEb,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,eAAe,EAC5B,cAAc,EAAE,kBAAkB,EAClC,YAAY,EAAE,gBAAgB,IAJzB,IAAI,CAAC,EAAE,CAKZ,CACH,CAAC,GACE,CACP,EAED,KAAC,sBAAsB,IAAC,QAAQ,EAAE,gBAAgB,GAAI,IAC1C,IACT,CACR,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,IAAI,EACJ,WAAW,EACX,cAAc,EACd,YAAY,GAMb;IACC,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE7C,OAAO,CACL,eAAK,SAAS,EAAC,oBAAoB,aACjC,eAAK,SAAS,EAAC,mCAAmC,aAChD,cAAI,SAAS,EAAC,aAAa,aACxB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,GAAG,EAC9D,eAAM,SAAS,EAAC,+BAA+B,YAC5C,CAAC,CAAC,+BAA+B,EAAE;oCAClC,GAAG,EAAE,IAAI,CAAC,WAAW;oCACrB,GAAG,EAAE,IAAI,CAAC,WAAW;oCACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;iCACxB,CAAC,GACG,IACJ,EACL,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,aAAa,EACrB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,YAExC,CAAC,CAAC,wCAAwC,CAAC,GACrC,IACL,EACN,cAAK,SAAS,EAAC,MAAM,YAClB,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAC3B,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,mCAAmC,CAAC,GAAK,CAC1F,CAAC,CAAC,CAAC,CACF,MAAC,KAAK,eACJ,KAAC,WAAW,cACV,MAAC,QAAQ,eACP,KAAC,SAAS,cAAE,CAAC,CAAC,6CAA6C,CAAC,GAAa,EACzE,KAAC,SAAS,cAAE,CAAC,CAAC,6CAA6C,CAAC,GAAa,EACzE,KAAC,SAAS,cAAE,CAAC,CAAC,sCAAsC,CAAC,GAAa,EAClE,KAAC,SAAS,IAAC,SAAS,EAAC,0BAA0B,YAAE,CAAC,CAAC,qCAAqC,CAAC,GAAa,IAC7F,GACC,EACd,KAAC,SAAS,cACP,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACzB,MAAC,QAAQ,eACP,KAAC,SAAS,IAAC,SAAS,EAAC,mBAAmB,YAAE,GAAG,CAAC,eAAe,GAAa,EAC1E,KAAC,SAAS,cAAE,GAAG,CAAC,eAAe,GAAa,EAC5C,KAAC,SAAS,cAAE,GAAG,CAAC,QAAQ,GAAa,EACrC,KAAC,SAAS,cACR,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,aAAa,EACrB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,YAElD,CAAC,CAAC,0CAA0C,CAAC,GACvC,GACC,KAbC,GAAG,CAAC,EAAE,CAcV,CACZ,CAAC,GACQ,IACN,CACT,GACG,EACN,eAAK,SAAS,EAAC,2BAA2B,aACxC,eAAK,SAAS,EAAC,kBAAkB,aAC/B,KAAC,KAAK,IAAC,OAAO,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,YAAG,CAAC,CAAC,6CAA6C,CAAC,GAAS,EAC5F,KAAC,aAAa,IACZ,EAAE,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,EACpB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,QAAQ,IAAI,IAAI,EACvB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,GAC3C,IACE,EACN,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE;4BACZ,KAAK,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gCAC5C,WAAW,CAAC,EAAE,CAAC,CAAC;4BAClB,CAAC,CAAC,CAAC;wBACL,CAAC,YAEA,CAAC,CAAC,uCAAuC,CAAC,GACpC,IACL,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,EAC9B,QAAQ,GAGT;IACC,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IACpD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAEpD,OAAO,CACL,eACE,SAAS,EAAC,yCAAyC,EACnD,IAAI,EAAC,OAAO,gBACA,CAAC,CAAC,+BAA+B,CAAC,aAE9C,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,KAAK,IAAC,OAAO,EAAC,QAAQ,YAAE,CAAC,CAAC,qCAAqC,CAAC,GAAS,EAC1E,KAAC,KAAK,IACJ,EAAE,EAAC,QAAQ,EACX,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC9C,WAAW,EAAE,CAAC,CAAC,gDAAgD,CAAC,GAChE,IACE,EACN,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,YAAE,CAAC,CAAC,gCAAgC,CAAC,GAAS,EACpE,KAAC,KAAK,IACJ,EAAE,EAAC,OAAO,EACV,IAAI,EAAC,QAAQ,EACb,GAAG,EAAC,GAAG,EACP,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GACrD,IACE,EACN,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,KAAK,IAAC,OAAO,EAAC,OAAO,YAAE,CAAC,CAAC,gCAAgC,CAAC,GAAS,EACpE,KAAC,KAAK,IACJ,EAAE,EAAC,OAAO,EACV,IAAI,EAAC,QAAQ,EACb,GAAG,EAAC,GAAG,EACP,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GACrD,IACE,EACN,cAAK,SAAS,EAAC,eAAe,YAC5B,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE;wBACZ,IAAI,CAAC,IAAI;4BAAE,OAAO;wBAClB,KAAK,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;4BAC1D,OAAO,CAAC,EAAE,CAAC,CAAC;4BACZ,cAAc,CAAC,GAAG,CAAC,CAAC;4BACpB,cAAc,CAAC,GAAG,CAAC,CAAC;wBACtB,CAAC,CAAC,CAAC;oBACL,CAAC,YAEA,CAAC,CAAC,iCAAiC,CAAC,GAC9B,GACL,IACF,CACP,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,eAAe,aAAa,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { type ReactNode } from 'react';
2
+ export declare function ProductsList(): ReactNode;
3
+ /**
4
+ * The default export a route declaration's dynamic-import factory resolves
5
+ * (feature 091, R6). The named export stays: it is the spelling this module's
6
+ * own siblings and tests use.
7
+ */
8
+ export default ProductsList;
9
+ //# sourceMappingURL=ProductsList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductsList.d.ts","sourceRoot":"","sources":["../../../src/admin/pages/ProductsList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AA+Ef,wBAAgB,YAAY,IAAI,SAAS,CA6nBxC;AAuGD;;;;GAIG;AACH,eAAe,YAAY,CAAC"}
@@ -0,0 +1,399 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useMemo, useState, } from 'react';
3
+ import { useNavigate, useSearchParams } from 'react-router-dom';
4
+ import { CircleDollarSign, Download, MoreHorizontal, Package, PenSquare, Plus, Search, Store, Tag, Trash2, Upload, Warehouse, X, } from 'lucide-react';
5
+ import { ProductsBulkEditDialog } from '../components/ProductsBulkEditDialog.js';
6
+ import { BULK_EDIT_HARD_MAX, resolveProductSelection, } from '../lib/resolve-product-selection.js';
7
+ import { ApiError, apiClient, cn, useAuth, usePageSizePreference } from '@endora-commerce/admin-kit/lib';
8
+ import { PaginationFooter } from '@endora-commerce/admin-kit/components';
9
+ import { useTranslation } from '@endora-commerce/admin-kit/i18n';
10
+ function emptySelection() {
11
+ return { mode: 'none', pageIds: new Set(), collectionSnapshot: null, collectionTotal: 0 };
12
+ }
13
+ const TYPE_CYCLE = ['all', 'simple', 'configurable', 'grouped', 'bundle', 'virtual'];
14
+ const STOCK_CYCLE = ['all', 'low', 'out'];
15
+ const STATUS_FILTERS = ['all', 'active', 'draft', 'inactive'];
16
+ function isStatusFilter(value) {
17
+ return value !== null && STATUS_FILTERS.includes(value);
18
+ }
19
+ export function ProductsList() {
20
+ const t = useTranslation('catalog');
21
+ const navigate = useNavigate();
22
+ // The create route this screen links to takes the **write** code (D-221), so
23
+ // both buttons that navigate there are gated on the same one. A link whose
24
+ // destination the operator's codes cannot open answers the admin's own
25
+ // not-found page, which says nothing about permissions at all — so the
26
+ // affordance moves with the route, or the tightening relocates the dead end
27
+ // instead of closing it. `sales_channels`' `+ New channel` and `blog`'s
28
+ // `New post` are the same shape.
29
+ const { hasPermission } = useAuth();
30
+ const canWrite = hasPermission('catalog:write');
31
+ const [searchParams] = useSearchParams();
32
+ const [rows, setRows] = useState([]);
33
+ const [total, setTotal] = useState(0);
34
+ const [counts, setCounts] = useState({ all: 0, active: 0, draft: 0, inactive: 0 });
35
+ const [loading, setLoading] = useState(true);
36
+ const [error, setError] = useState(null);
37
+ const [query, setQuery] = useState('');
38
+ const [statusFilter, setStatusFilter] = useState(() => {
39
+ const fromUrl = searchParams.get('status');
40
+ return isStatusFilter(fromUrl) ? fromUrl : 'all';
41
+ });
42
+ const [typeFilter, setTypeFilter] = useState('all');
43
+ const [stockFilter, setStockFilter] = useState('all');
44
+ const [selection, setSelection] = useState(emptySelection);
45
+ const [bulkEditOpen, setBulkEditOpen] = useState(false);
46
+ const [deleting, setDeleting] = useState(false);
47
+ const [bulkEditProductIds, setBulkEditProductIds] = useState([]);
48
+ const [selectionError, setSelectionError] = useState(null);
49
+ const [resolvingSelection, setResolvingSelection] = useState(false);
50
+ const { pageSize, setPageSize } = usePageSizePreference('catalog-products');
51
+ const [page, setPage] = useState(0);
52
+ // Debounce the text query so each keystroke doesn't fire a fetch. 250 ms
53
+ // is fast enough to feel live and slow enough to coalesce typing bursts.
54
+ const [debouncedQuery, setDebouncedQuery] = useState(query);
55
+ useEffect(() => {
56
+ const id = window.setTimeout(() => setDebouncedQuery(query), 250);
57
+ return () => window.clearTimeout(id);
58
+ }, [query]);
59
+ const refresh = useCallback(async () => {
60
+ setLoading(true);
61
+ setError(null);
62
+ try {
63
+ const params = new URLSearchParams();
64
+ params.set('includeArchived', '1');
65
+ if (statusFilter !== 'all')
66
+ params.set('status', statusFilter);
67
+ if (typeFilter !== 'all')
68
+ params.set('type', typeFilter);
69
+ const trimmed = debouncedQuery.trim();
70
+ if (trimmed)
71
+ params.set('q', trimmed);
72
+ params.set('page', String(page));
73
+ params.set('pageSize', String(pageSize));
74
+ const res = await apiClient.get(`/api/v1/admin/catalog/products?${params.toString()}`);
75
+ setRows(res.data);
76
+ setTotal(res.pagination.total);
77
+ setCounts(res.counts);
78
+ }
79
+ catch (err) {
80
+ setError(err instanceof ApiError ? err.envelope.error.message : t('productsList.error.load'));
81
+ }
82
+ finally {
83
+ setLoading(false);
84
+ }
85
+ }, [statusFilter, typeFilter, debouncedQuery, page, pageSize, t]);
86
+ useEffect(() => {
87
+ void refresh();
88
+ }, [refresh]);
89
+ // Reset to the first page whenever the result-shaping inputs change so
90
+ // the user never lands on an out-of-range page. Page-size, status, type,
91
+ // and the (debounced) text query all reshape the result set.
92
+ useEffect(() => {
93
+ setPage(0);
94
+ }, [statusFilter, typeFilter, debouncedQuery, pageSize]);
95
+ // Feature 033 — changing filters invalidates collection-wide selection (FR-006).
96
+ useEffect(() => {
97
+ setSelection(emptySelection());
98
+ setBulkEditOpen(false);
99
+ setBulkEditProductIds([]);
100
+ setSelectionError(null);
101
+ }, [statusFilter, typeFilter, debouncedQuery]);
102
+ const filterSnapshot = useCallback(() => ({
103
+ status: statusFilter,
104
+ type: typeFilter,
105
+ q: debouncedQuery,
106
+ }), [statusFilter, typeFilter, debouncedQuery]);
107
+ // The stock chip remains a placeholder until the list payload carries
108
+ // stock numbers — apply it client-side as a kill-switch so the UI stays
109
+ // honest (returns 0 rows when "Out"/"Low" is picked).
110
+ const filtered = useMemo(() => {
111
+ if (stockFilter !== 'all')
112
+ return [];
113
+ return rows;
114
+ }, [rows, stockFilter]);
115
+ const selectedCount = selection.mode === 'collection' ? selection.collectionTotal : selection.pageIds.size;
116
+ const isRowSelected = (id) => selection.mode === 'collection' || selection.pageIds.has(id);
117
+ const allVisibleSelected = filtered.length > 0 &&
118
+ (selection.mode === 'collection' ||
119
+ filtered.every((p) => selection.pageIds.has(p.id)));
120
+ const someVisibleSelected = filtered.some((p) => isRowSelected(p.id)) && !allVisibleSelected;
121
+ const showSelectAllBanner = filtered.length > 0 &&
122
+ total > filtered.length &&
123
+ selection.mode === 'page' &&
124
+ filtered.every((p) => selection.pageIds.has(p.id));
125
+ const clearSelection = () => {
126
+ setSelection(emptySelection());
127
+ setSelectionError(null);
128
+ };
129
+ const toggleAll = () => {
130
+ if (selection.mode === 'collection' || allVisibleSelected) {
131
+ clearSelection();
132
+ return;
133
+ }
134
+ setSelection({
135
+ mode: 'page',
136
+ pageIds: new Set(filtered.map((p) => p.id)),
137
+ collectionSnapshot: null,
138
+ collectionTotal: 0,
139
+ });
140
+ };
141
+ const toggleOne = (id) => {
142
+ setSelection((prev) => {
143
+ if (prev.mode === 'collection') {
144
+ const nextIds = new Set(filtered.map((p) => p.id));
145
+ nextIds.delete(id);
146
+ return {
147
+ mode: nextIds.size === 0 ? 'none' : 'page',
148
+ pageIds: nextIds,
149
+ collectionSnapshot: null,
150
+ collectionTotal: 0,
151
+ };
152
+ }
153
+ const nextIds = new Set(prev.pageIds);
154
+ if (nextIds.has(id))
155
+ nextIds.delete(id);
156
+ else
157
+ nextIds.add(id);
158
+ return {
159
+ mode: nextIds.size === 0 ? 'none' : 'page',
160
+ pageIds: nextIds,
161
+ collectionSnapshot: null,
162
+ collectionTotal: 0,
163
+ };
164
+ });
165
+ };
166
+ const selectCollectionMode = () => {
167
+ setSelection({
168
+ mode: 'collection',
169
+ pageIds: new Set(),
170
+ collectionSnapshot: filterSnapshot(),
171
+ collectionTotal: total,
172
+ });
173
+ };
174
+ const resolveSelectedIds = async () => {
175
+ if (selection.mode === 'collection' && selection.collectionSnapshot) {
176
+ const { productIds } = await resolveProductSelection(selection.collectionSnapshot);
177
+ return productIds;
178
+ }
179
+ return Array.from(selection.pageIds);
180
+ };
181
+ const openBulkEdit = async () => {
182
+ setSelectionError(null);
183
+ setResolvingSelection(true);
184
+ try {
185
+ const ids = await resolveSelectedIds();
186
+ // Large selections are no longer rejected — above the backend's
187
+ // async threshold they are delegated to a background bulk operation
188
+ // (the dialog surfaces a "queued" acknowledgement). Only the
189
+ // contract hard maximum is enforced client-side.
190
+ if (ids.length > BULK_EDIT_HARD_MAX) {
191
+ setSelectionError(t('productsList.selection.bulkEditHardLimit', {
192
+ total: ids.length,
193
+ maxBatchSize: BULK_EDIT_HARD_MAX,
194
+ }));
195
+ return;
196
+ }
197
+ setBulkEditProductIds(ids);
198
+ setBulkEditOpen(true);
199
+ }
200
+ catch {
201
+ setSelectionError(t('productsList.selection.resolveFailed'));
202
+ }
203
+ finally {
204
+ setResolvingSelection(false);
205
+ }
206
+ };
207
+ const runWithResolvedIds = async (action) => {
208
+ setSelectionError(null);
209
+ setResolvingSelection(true);
210
+ try {
211
+ const ids = await resolveSelectedIds();
212
+ await action(ids);
213
+ }
214
+ catch {
215
+ setSelectionError(t('productsList.selection.resolveFailed'));
216
+ }
217
+ finally {
218
+ setResolvingSelection(false);
219
+ }
220
+ };
221
+ const handleBulkDelete = () => {
222
+ if (deleting || selectedCount === 0)
223
+ return;
224
+ if (!confirm(t('productsList.bulk.deleteConfirm', { count: selectedCount })))
225
+ return;
226
+ setDeleting(true);
227
+ setError(null);
228
+ // Resolve the full selection (page or "all matching" collection scope —
229
+ // feature 033) before deleting; collect per-item failures (feature 032).
230
+ void runWithResolvedIds(async (ids) => {
231
+ const failed = [];
232
+ for (const id of ids) {
233
+ try {
234
+ await apiClient.delete(`/api/v1/admin/catalog/products/${id}`);
235
+ }
236
+ catch (err) {
237
+ const message = err instanceof ApiError
238
+ ? err.envelope.error.message
239
+ : t('productsList.bulk.deleteFailed');
240
+ failed.push({ id, message });
241
+ }
242
+ }
243
+ if (failed.length > 0) {
244
+ setError(failed.map((f) => f.message).join(' · '));
245
+ }
246
+ else {
247
+ clearSelection();
248
+ }
249
+ await refresh();
250
+ }).finally(() => {
251
+ setDeleting(false);
252
+ });
253
+ };
254
+ return (_jsxs("div", { className: "b2b-page b2b-page--wide", children: [_jsxs("div", { className: "b2b-page-head", children: [_jsxs("div", { className: "b2b-grow", children: [_jsx("div", { className: "b2b-page-head__title", children: t('productsList.title') }), _jsx("div", { className: "b2b-page-head__sub", children: t('productsList.subtitle', { count: counts.all }) })] }), _jsxs("div", { className: "b2b-page-head__actions", children: [_jsxs("button", { type: "button", className: "b2b-btn b2b-btn--default b2b-btn--sm", children: [_jsx(Upload, { size: 13 }), " ", t('productsList.action.import')] }), _jsxs("button", { type: "button", className: "b2b-btn b2b-btn--default b2b-btn--sm", children: [_jsx(Download, { size: 13 }), " ", t('productsList.action.export')] }), canWrite ? (_jsxs("button", { type: "button", className: "b2b-btn b2b-btn--primary", onClick: () => { navigate('/catalog/products/new'); }, children: [_jsx(Plus, { size: 14 }), " ", t('productsList.action.newProduct')] })) : null] })] }), error ? (_jsx("div", { className: "b2b-card", style: {
255
+ background: 'var(--danger-soft)',
256
+ color: 'var(--danger-soft-fg)',
257
+ padding: 12,
258
+ marginBottom: 16,
259
+ border: '1px solid hsl(8 80% 85%)',
260
+ }, children: error })) : null, _jsxs("div", { className: "b2b-card", children: [_jsx("div", { style: { padding: '4px 12px 0', overflow: 'hidden' }, children: _jsx("div", { className: "b2b-tabs-scroll", children: _jsxs("div", { className: "b2b-tabs", role: "tablist", children: [_jsx(Tab, { id: "all", label: t('productsList.tab.all'), count: counts.all, active: statusFilter, onChange: setStatusFilter }), _jsx(Tab, { id: "active", label: t('productsList.tab.active'), count: counts.active, active: statusFilter, onChange: setStatusFilter }), _jsx(Tab, { id: "draft", label: t('productsList.tab.draft'), count: counts.draft, active: statusFilter, onChange: setStatusFilter }), _jsx(Tab, { id: "inactive", label: t('productsList.tab.inactive'), count: counts.inactive, active: statusFilter, onChange: setStatusFilter })] }) }) }), _jsxs("div", { className: "b2b-filterbar", children: [_jsx("div", { className: "b2b-filterbar__search", children: _jsxs("div", { className: "b2b-input-wrap", children: [_jsx(Search, { size: 16, className: "lead" }), _jsx("input", { className: "b2b-field b2b-field--addon", placeholder: t('productsList.search.placeholder'), value: query, onChange: (e) => setQuery(e.target.value) })] }) }), _jsx(Chip, { icon: _jsx(Package, { size: 12 }), active: typeFilter !== 'all', label: typeFilter === 'all' ? t('productsList.chip.type') : t('productsList.chip.typeWithValue', { value: typeFilter }), onClick: () => {
261
+ const idx = TYPE_CYCLE.indexOf(typeFilter);
262
+ setTypeFilter(TYPE_CYCLE[(idx + 1) % TYPE_CYCLE.length]);
263
+ }, ...(typeFilter !== 'all'
264
+ ? { onRemove: () => setTypeFilter('all') }
265
+ : {}) }), _jsx(Chip, { icon: _jsx(Warehouse, { size: 12 }), active: stockFilter !== 'all', label: stockFilter === 'all'
266
+ ? t('productsList.chip.stock')
267
+ : stockFilter === 'out'
268
+ ? t('productsList.chip.outOfStock')
269
+ : t('productsList.chip.lowStock'), onClick: () => {
270
+ const idx = STOCK_CYCLE.indexOf(stockFilter);
271
+ setStockFilter(STOCK_CYCLE[(idx + 1) % STOCK_CYCLE.length]);
272
+ }, ...(stockFilter !== 'all'
273
+ ? { onRemove: () => setStockFilter('all') }
274
+ : {}) }), _jsx(Chip, { icon: _jsx(Tag, { size: 12 }), active: false, label: t('productsList.chip.category'), onClick: () => { } }), _jsx(Chip, { icon: _jsx(Store, { size: 12 }), active: false, label: t('productsList.chip.channel'), onClick: () => { } })] }), showSelectAllBanner ? (_jsxs("div", { style: {
275
+ padding: '8px 12px',
276
+ fontSize: 13,
277
+ background: 'var(--bg-subtle, #f6f6f7)',
278
+ borderBottom: '1px solid var(--border, #e5e7eb)',
279
+ }, children: [t('productsList.selection.allPageSelected', { pageCount: filtered.length }), ' ', _jsx("button", { type: "button", "data-testid": "select-all-matching", className: "b2b-btn b2b-btn--ghost", style: { display: 'inline', height: 'auto', padding: 0, color: 'var(--primary-color)' }, onClick: selectCollectionMode, children: t('productsList.selection.selectAllMatching', { total }) })] })) : null, selectionError ? (_jsx("div", { style: {
280
+ padding: '8px 12px',
281
+ fontSize: 13,
282
+ color: 'var(--danger-soft-fg)',
283
+ background: 'var(--danger-soft)',
284
+ borderBottom: '1px solid hsl(8 80% 85%)',
285
+ }, children: selectionError })) : null, selectedCount > 0 ? (_jsxs("div", { className: "b2b-bulkbar", children: [_jsx("input", { type: "checkbox", className: "b2b-cbx", checked: allVisibleSelected, ref: (el) => {
286
+ if (el)
287
+ el.indeterminate = someVisibleSelected;
288
+ }, onChange: toggleAll }), _jsxs("span", { className: "count", "data-testid": "selection-summary", children: [t('productsList.selection.selected', { count: selectedCount }), ' ', selection.mode === 'collection'
289
+ ? t('productsList.selection.scopeCollection')
290
+ : t('productsList.selection.scopePage')] }), _jsxs("div", { className: "actions", children: [_jsxs("button", { type: "button", className: "b2b-btn b2b-btn--primary", disabled: resolvingSelection, onClick: () => {
291
+ void openBulkEdit();
292
+ }, children: [_jsx(PenSquare, { size: 13 }), ' ', resolvingSelection
293
+ ? t('productsList.selection.resolving')
294
+ : t('productsList.bulk.edit')] }), _jsxs("button", { type: "button", className: "b2b-btn", disabled: resolvingSelection, onClick: () => {
295
+ void runWithResolvedIds(async () => {
296
+ /* Edit price — placeholder until dedicated flow ships */
297
+ });
298
+ }, children: [_jsx(CircleDollarSign, { size: 13 }), " ", t('productsList.bulk.editPrice')] }), _jsxs("button", { type: "button", className: "b2b-btn b2b-btn--danger", disabled: deleting || resolvingSelection, onClick: handleBulkDelete, children: [_jsx(Trash2, { size: 13 }), " ", deleting ? '…' : t('productsList.bulk.delete')] })] }), _jsx("button", { type: "button", className: "b2b-btn b2b-btn--ghost b2b-btn--icon b2b-btn--sm", style: { color: '#fff' }, onClick: clearSelection, children: _jsx(X, { size: 14 }) })] })) : null, bulkEditOpen && bulkEditProductIds.length > 0 ? (_jsx(ProductsBulkEditDialog, { productIds: bulkEditProductIds, selectionScope: selection.mode === 'collection' ? 'collection' : 'page', onClose: () => {
299
+ setBulkEditOpen(false);
300
+ setBulkEditProductIds([]);
301
+ }, onApplied: () => {
302
+ // Refresh the list and drop the selection in the background, but
303
+ // keep the dialog open: it now shows the queued-acknowledgement
304
+ // ("sent to the queue, you'll be notified when it finishes") or
305
+ // the synchronous summary. The user dismisses it via the dialog's
306
+ // own Close / "View bulk actions" buttons.
307
+ void refresh();
308
+ clearSelection();
309
+ } })) : null, _jsx("div", { className: "b2b-card__body b2b-card__body--flush", children: loading ? (_jsx("div", { style: { padding: 32, color: 'var(--fg-muted)', fontSize: 13 }, children: t('productsList.loading') })) : filtered.length === 0 ? (_jsxs("div", { className: "b2b-empty", children: [_jsx("div", { className: "b2b-empty__icon", children: _jsx(Package, { size: 20 }) }), _jsx("div", { className: "b2b-empty__title", children: t('productsList.empty.title') }), _jsx("div", { className: "b2b-empty__sub", children: canWrite ? (_jsxs(_Fragment, { children: [t('productsList.empty.prefix'), ' ', _jsx("button", { type: "button", className: "b2b-btn b2b-btn--ghost", onClick: () => { navigate('/catalog/products/new'); }, style: { display: 'inline-flex', height: 'auto', padding: 0, color: 'var(--primary-color)' }, children: t('productsList.empty.button') }), ' ', t('productsList.empty.suffix')] })) : (t('productsList.empty.readOnly')) })] })) : (_jsx("div", { className: "b2b-table-scroll", children: _jsxs("table", { className: "b2b-tbl", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { className: "col-cb", children: _jsx("input", { type: "checkbox", className: "b2b-cbx", checked: allVisibleSelected, ref: (el) => {
310
+ if (el)
311
+ el.indeterminate = someVisibleSelected;
312
+ }, onChange: toggleAll }) }), _jsx("th", { children: t('productsList.column.product') }), _jsx("th", { children: t('productsList.column.sku') }), _jsx("th", { children: t('productsList.column.status') }), _jsx("th", { children: t('productsList.column.type') }), _jsx("th", { children: t('productsList.column.visibility') }), _jsx("th", { children: t('productsList.column.updated') }), _jsx("th", {})] }) }), _jsx("tbody", { children: filtered.map((r) => (_jsxs("tr", { className: cn('is-clickable', isRowSelected(r.id) && 'is-selected'), onClick: () => { navigate(`/catalog/products/${r.id}`); }, children: [_jsx("td", { className: "col-cb", onClick: (e) => e.stopPropagation(), children: _jsx("input", { type: "checkbox", className: "b2b-cbx", checked: isRowSelected(r.id), onChange: () => toggleOne(r.id) }) }), _jsx("td", { children: _jsxs("div", { className: "b2b-row", style: { gap: 12 }, children: [_jsx("div", { className: "b2b-thumb", style: {
313
+ width: 36,
314
+ height: 36,
315
+ background: hashColor(r.id),
316
+ } }), _jsxs("div", { style: { minWidth: 0 }, children: [_jsx("div", { style: {
317
+ fontWeight: 500,
318
+ color: 'var(--fg)',
319
+ whiteSpace: 'nowrap',
320
+ overflow: 'hidden',
321
+ textOverflow: 'ellipsis',
322
+ maxWidth: 360,
323
+ }, children: pickName(r.name) }), r.name['pl-PL'] && r.name['pl-PL'] !== r.name['en-US'] ? (_jsxs("div", { className: "b2b-muted", style: {
324
+ fontSize: 12,
325
+ whiteSpace: 'nowrap',
326
+ overflow: 'hidden',
327
+ textOverflow: 'ellipsis',
328
+ maxWidth: 360,
329
+ }, children: ["\uD83C\uDDF5\uD83C\uDDF1 ", r.name['pl-PL']] })) : null] })] }) }), _jsx("td", { children: _jsx("span", { className: "b2b-mono", style: { fontSize: 12, color: 'var(--fg-muted)' }, children: r.sku }) }), _jsx("td", { children: _jsx(StatusPill, { status: r.status }) }), _jsx("td", { children: _jsx("span", { style: { fontSize: 12, textTransform: 'capitalize' }, children: r.type }) }), _jsx("td", { children: _jsx("span", { style: { fontSize: 12, color: 'var(--fg-muted)' }, children: humanizeVisibility(r.visibility) }) }), _jsx("td", { children: _jsx("span", { className: "b2b-muted", style: { fontSize: 12 }, children: relTime(r.updatedAt) }) }), _jsx("td", { className: "actions", onClick: (e) => e.stopPropagation(), children: _jsx("button", { type: "button", className: "b2b-btn b2b-btn--ghost b2b-btn--icon b2b-btn--sm", children: _jsx(MoreHorizontal, { size: 14 }) }) })] }, r.id))) })] }) })) }), _jsx(PaginationFooter, { page: page, pageSize: pageSize, total: total, onPageSizeChange: setPageSize, onPrev: () => setPage((p) => Math.max(0, p - 1)), onNext: () => setPage((p) => p + 1) })] })] }));
330
+ }
331
+ function Tab(props) {
332
+ return (_jsxs("button", { type: "button", role: "tab", "aria-selected": props.active === props.id, className: cn('b2b-tab', props.active === props.id && 'is-active'), onClick: () => props.onChange(props.id), children: [_jsx("span", { children: props.label }), _jsx("span", { className: "b2b-badge b2b-badge--outline", children: props.count })] }));
333
+ }
334
+ function Chip(props) {
335
+ return (_jsxs("button", { type: "button", className: cn('b2b-filterchip', props.active && 'is-on'), onClick: props.onClick, children: [props.icon, _jsx("span", { children: props.label }), props.active && props.onRemove ? (_jsx(X, { size: 12, onClick: (e) => {
336
+ e.stopPropagation();
337
+ props.onRemove?.();
338
+ } })) : null] }));
339
+ }
340
+ function StatusPill({ status }) {
341
+ const map = {
342
+ active: { cls: 'b2b-badge--success', label: 'Active' },
343
+ draft: { cls: 'b2b-badge--warn', label: 'Draft' },
344
+ inactive: { cls: '', label: 'Inactive' },
345
+ };
346
+ const v = map[status];
347
+ return _jsx("span", { className: cn('b2b-badge', 'b2b-badge--dot', v.cls), children: v.label });
348
+ }
349
+ function pickName(name) {
350
+ return name['en-US'] ?? Object.values(name)[0] ?? '';
351
+ }
352
+ function humanizeVisibility(v) {
353
+ if (v === 'logged_in_only')
354
+ return 'Logged-in';
355
+ if (v === 'organization_restricted')
356
+ return 'Org-restricted';
357
+ return v.charAt(0).toUpperCase() + v.slice(1);
358
+ }
359
+ /* Light fingerprint of an id → a stable Shopify-ish swatch for the
360
+ * thumbnail placeholder. The real product page will swap this for the
361
+ * gallery's base image. */
362
+ function hashColor(id) {
363
+ let hash = 0;
364
+ for (let i = 0; i < id.length; i++)
365
+ hash = (hash << 5) - hash + id.charCodeAt(i);
366
+ const palette = [
367
+ 'linear-gradient(135deg, #94a3b8cc, #475569cc)',
368
+ 'linear-gradient(135deg, #a3a8b1cc, #5b6a78cc)',
369
+ 'linear-gradient(135deg, #b39ddbcc, #6750a4cc)',
370
+ 'linear-gradient(135deg, #fcd34dcc, #b54708cc)',
371
+ 'linear-gradient(135deg, #6ee7b7cc, #008060cc)',
372
+ 'linear-gradient(135deg, #ffafa3cc, #d72c0dcc)',
373
+ ];
374
+ const idx = Math.abs(hash) % palette.length;
375
+ return palette[idx];
376
+ }
377
+ function relTime(iso) {
378
+ const d = new Date(iso);
379
+ const diff = (Date.now() - d.getTime()) / 1000;
380
+ if (diff < 60)
381
+ return 'just now';
382
+ if (diff < 3600)
383
+ return `${Math.floor(diff / 60)}m ago`;
384
+ if (diff < 86400)
385
+ return `${Math.floor(diff / 3600)}h ago`;
386
+ if (diff < 86400 * 7)
387
+ return `${Math.floor(diff / 86400)}d ago`;
388
+ return d.toLocaleDateString('en-US', { month: 'short', day: 'numeric' });
389
+ }
390
+ // Suppress unused: passed through cn() calls, kept for future use.
391
+ const _styleAvoidsUnusedImport = {};
392
+ void _styleAvoidsUnusedImport;
393
+ /**
394
+ * The default export a route declaration's dynamic-import factory resolves
395
+ * (feature 091, R6). The named export stays: it is the spelling this module's
396
+ * own siblings and tests use.
397
+ */
398
+ export default ProductsList;
399
+ //# sourceMappingURL=ProductsList.js.map