@clober/v2-sdk 0.0.128 → 1.0.0-rc.10

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 (722) hide show
  1. package/dist/cjs/calls/approval/open-order.js +49 -0
  2. package/dist/cjs/calls/approval/open-order.js.map +1 -0
  3. package/dist/cjs/calls/approval/token.js +60 -0
  4. package/dist/cjs/calls/approval/token.js.map +1 -0
  5. package/dist/cjs/calls/index.js +36 -0
  6. package/dist/cjs/calls/index.js.map +1 -0
  7. package/dist/cjs/calls/market/cancel.js +80 -0
  8. package/dist/cjs/calls/market/cancel.js.map +1 -0
  9. package/dist/cjs/calls/market/claim.js +79 -0
  10. package/dist/cjs/calls/market/claim.js.map +1 -0
  11. package/dist/cjs/calls/market/limit.js +177 -0
  12. package/dist/cjs/calls/market/limit.js.map +1 -0
  13. package/dist/cjs/calls/market/market.js +170 -0
  14. package/dist/cjs/calls/market/market.js.map +1 -0
  15. package/dist/cjs/calls/market/open.js +50 -0
  16. package/dist/cjs/calls/market/open.js.map +1 -0
  17. package/dist/cjs/calls/pool/burn.js +88 -0
  18. package/dist/cjs/calls/pool/burn.js.map +1 -0
  19. package/dist/cjs/calls/pool/market-making/adjust.js +69 -0
  20. package/dist/cjs/calls/pool/market-making/adjust.js.map +1 -0
  21. package/dist/cjs/calls/pool/market-making/pause.js +44 -0
  22. package/dist/cjs/calls/pool/market-making/pause.js.map +1 -0
  23. package/dist/cjs/calls/pool/market-making/refill.js +41 -0
  24. package/dist/cjs/calls/pool/market-making/refill.js.map +1 -0
  25. package/dist/cjs/calls/pool/market-making/resume.js +44 -0
  26. package/dist/cjs/calls/pool/market-making/resume.js.map +1 -0
  27. package/dist/cjs/calls/pool/market-making/strategy.js +78 -0
  28. package/dist/cjs/calls/pool/market-making/strategy.js.map +1 -0
  29. package/dist/cjs/calls/pool/mint.js +163 -0
  30. package/dist/cjs/calls/pool/mint.js.map +1 -0
  31. package/dist/cjs/calls/pool/open.js +50 -0
  32. package/dist/cjs/calls/pool/open.js.map +1 -0
  33. package/dist/cjs/constants/abis/core/book-manager-abi.js.map +1 -0
  34. package/dist/cjs/constants/abis/core/book-viewer-abi.js.map +1 -0
  35. package/dist/cjs/constants/abis/core/controller-abi.js.map +1 -0
  36. package/dist/cjs/constants/abis/rebalancer/minter-abi.js.map +1 -0
  37. package/dist/cjs/constants/abis/rebalancer/mock-swap-abi.js.map +1 -0
  38. package/dist/cjs/constants/abis/rebalancer/operator-abi.js.map +1 -0
  39. package/dist/cjs/constants/abis/rebalancer/rebalancer-abi.js.map +1 -0
  40. package/dist/cjs/constants/abis/rebalancer/strategy-abi.js.map +1 -0
  41. package/dist/cjs/constants/{addresses.js → chain-configs/addresses.js} +0 -27
  42. package/dist/cjs/constants/chain-configs/addresses.js.map +1 -0
  43. package/dist/cjs/constants/{chain.js → chain-configs/chain.js} +3 -15
  44. package/dist/cjs/constants/chain-configs/chain.js.map +1 -0
  45. package/dist/cjs/constants/chain-configs/currency.js +82 -0
  46. package/dist/cjs/constants/chain-configs/currency.js.map +1 -0
  47. package/dist/cjs/constants/chain-configs/fee.js +20 -0
  48. package/dist/cjs/constants/chain-configs/fee.js.map +1 -0
  49. package/dist/cjs/constants/{subgraph.js → chain-configs/subgraph.js} +6 -9
  50. package/dist/cjs/constants/chain-configs/subgraph.js.map +1 -0
  51. package/dist/cjs/constants/networks/rise-sepolia.js.map +1 -0
  52. package/dist/cjs/constants/networks/test-chain.js.map +1 -0
  53. package/dist/cjs/constants/permit.js +2 -2
  54. package/dist/cjs/constants/permit.js.map +1 -1
  55. package/dist/cjs/constants/price.js.map +1 -1
  56. package/dist/cjs/entities/analytics/apis/index.js +101 -0
  57. package/dist/cjs/entities/analytics/apis/index.js.map +1 -0
  58. package/dist/cjs/{model/depth.js → entities/analytics/types.js} +1 -1
  59. package/dist/cjs/entities/analytics/types.js.map +1 -0
  60. package/dist/cjs/entities/book/apis/index.js +82 -0
  61. package/dist/cjs/entities/book/apis/index.js.map +1 -0
  62. package/dist/cjs/{model/book.js → entities/book/model.js} +11 -11
  63. package/dist/cjs/entities/book/model.js.map +1 -0
  64. package/dist/cjs/{model/currency.js → entities/book/types.js} +1 -1
  65. package/dist/cjs/entities/book/types.js.map +1 -0
  66. package/dist/cjs/{utils → entities/book/utils}/book-id.js +1 -1
  67. package/dist/cjs/entities/book/utils/book-id.js.map +1 -0
  68. package/dist/cjs/entities/currency/apis/allowance.js +38 -0
  69. package/dist/cjs/entities/currency/apis/allowance.js.map +1 -0
  70. package/dist/cjs/entities/currency/apis/approval.js +39 -0
  71. package/dist/cjs/entities/currency/apis/approval.js.map +1 -0
  72. package/dist/cjs/entities/currency/apis/index.js +128 -0
  73. package/dist/cjs/entities/currency/apis/index.js.map +1 -0
  74. package/dist/cjs/entities/currency/apis/price.js +36 -0
  75. package/dist/cjs/entities/currency/apis/price.js.map +1 -0
  76. package/dist/cjs/entities/currency/apis/total-supply.js +70 -0
  77. package/dist/cjs/entities/currency/apis/total-supply.js.map +1 -0
  78. package/dist/cjs/{model/chart-log.js → entities/currency/types.js} +1 -1
  79. package/dist/cjs/entities/currency/types.js.map +1 -0
  80. package/dist/cjs/{model/fee-policy.js → entities/fee-policy/model.js} +2 -2
  81. package/dist/cjs/entities/fee-policy/model.js.map +1 -0
  82. package/dist/cjs/{apis/chart-logs.js → entities/market/apis/chart-log.js} +15 -15
  83. package/dist/cjs/entities/market/apis/chart-log.js.map +1 -0
  84. package/dist/cjs/entities/market/apis/index.js +33 -0
  85. package/dist/cjs/entities/market/apis/index.js.map +1 -0
  86. package/dist/cjs/entities/market/apis/snapshot.js +268 -0
  87. package/dist/cjs/entities/market/apis/snapshot.js.map +1 -0
  88. package/dist/cjs/{model/market.js → entities/market/model.js} +14 -16
  89. package/dist/cjs/entities/market/model.js.map +1 -0
  90. package/dist/cjs/{model/open-order.js → entities/market/types.js} +1 -1
  91. package/dist/cjs/entities/market/types.js.map +1 -0
  92. package/dist/cjs/{utils/market.js → entities/market/utils/market-id.js} +3 -5
  93. package/dist/cjs/entities/market/utils/market-id.js.map +1 -0
  94. package/dist/cjs/entities/open-order/apis/index.js +199 -0
  95. package/dist/cjs/entities/open-order/apis/index.js.map +1 -0
  96. package/dist/cjs/entities/open-order/types.js +3 -0
  97. package/dist/cjs/entities/open-order/types.js.map +1 -0
  98. package/dist/cjs/entities/open-order/utils/order-id.js +13 -0
  99. package/dist/cjs/entities/open-order/utils/order-id.js.map +1 -0
  100. package/dist/cjs/entities/pool/apis/index.js +76 -0
  101. package/dist/cjs/entities/pool/apis/index.js.map +1 -0
  102. package/dist/cjs/entities/pool/apis/snapshot.js +88 -0
  103. package/dist/cjs/entities/pool/apis/snapshot.js.map +1 -0
  104. package/dist/cjs/{apis → entities/pool/apis}/strategy.js +4 -22
  105. package/dist/cjs/entities/pool/apis/strategy.js.map +1 -0
  106. package/dist/cjs/{model/pool.js → entities/pool/model.js} +5 -5
  107. package/dist/cjs/entities/pool/model.js.map +1 -0
  108. package/dist/cjs/entities/pool/types.js +3 -0
  109. package/dist/cjs/entities/pool/types.js.map +1 -0
  110. package/dist/cjs/{utils/pool.js → entities/pool/utils/mint.js} +14 -2
  111. package/dist/cjs/entities/pool/utils/mint.js.map +1 -0
  112. package/dist/cjs/{utils → entities/pool/utils}/pool-key.js +3 -6
  113. package/dist/cjs/entities/pool/utils/pool-key.js.map +1 -0
  114. package/dist/cjs/index.js +3 -4
  115. package/dist/cjs/index.js.map +1 -1
  116. package/dist/cjs/types/default-options.js +3 -0
  117. package/dist/cjs/types/default-options.js.map +1 -0
  118. package/dist/cjs/{type.js → types/index.js} +2 -2
  119. package/dist/cjs/types/index.js.map +1 -0
  120. package/dist/cjs/types/permit.js +3 -0
  121. package/dist/cjs/types/permit.js.map +1 -0
  122. package/dist/cjs/types/transaction.js +3 -0
  123. package/dist/cjs/types/transaction.js.map +1 -0
  124. package/dist/cjs/utils/bigint.js +4 -1
  125. package/dist/cjs/utils/bigint.js.map +1 -1
  126. package/dist/cjs/utils/{decimals.js → conversion.js} +1 -1
  127. package/dist/cjs/utils/conversion.js.map +1 -0
  128. package/dist/cjs/{utils.js → utils/index.js} +8 -8
  129. package/dist/cjs/utils/index.js.map +1 -0
  130. package/dist/cjs/utils/prices.js +1 -2
  131. package/dist/cjs/utils/prices.js.map +1 -1
  132. package/dist/cjs/utils/time.js +7 -2
  133. package/dist/cjs/utils/time.js.map +1 -1
  134. package/dist/cjs/utils/unit-size.js +2 -2
  135. package/dist/cjs/utils/unit-size.js.map +1 -1
  136. package/dist/cjs/views/address.js +9 -0
  137. package/dist/cjs/views/address.js.map +1 -0
  138. package/dist/cjs/views/analytics.js +13 -0
  139. package/dist/cjs/views/analytics.js.map +1 -0
  140. package/dist/cjs/views/currency.js +26 -0
  141. package/dist/cjs/views/currency.js.map +1 -0
  142. package/dist/cjs/views/index.js +38 -0
  143. package/dist/cjs/views/index.js.map +1 -0
  144. package/dist/cjs/views/market/chart-log.js +13 -0
  145. package/dist/cjs/views/market/chart-log.js.map +1 -0
  146. package/dist/cjs/views/market/index.js +30 -0
  147. package/dist/cjs/views/market/index.js.map +1 -0
  148. package/dist/cjs/views/market/quote.js +97 -0
  149. package/dist/cjs/views/market/quote.js.map +1 -0
  150. package/dist/cjs/views/market/snapshot.js +28 -0
  151. package/dist/cjs/views/market/snapshot.js.map +1 -0
  152. package/dist/cjs/views/market/token.js +10 -0
  153. package/dist/cjs/views/market/token.js.map +1 -0
  154. package/dist/cjs/views/open-order.js +13 -0
  155. package/dist/cjs/views/open-order.js.map +1 -0
  156. package/dist/cjs/views/pool/index.js +28 -0
  157. package/dist/cjs/views/pool/index.js.map +1 -0
  158. package/dist/cjs/views/pool/market-making.js +23 -0
  159. package/dist/cjs/views/pool/market-making.js.map +1 -0
  160. package/dist/cjs/views/pool/snapshot.js +17 -0
  161. package/dist/cjs/views/pool/snapshot.js.map +1 -0
  162. package/dist/cjs/views/subgraph.js +14 -0
  163. package/dist/cjs/views/subgraph.js.map +1 -0
  164. package/dist/cjs/views/tick.js +80 -0
  165. package/dist/cjs/views/tick.js.map +1 -0
  166. package/dist/esm/calls/approval/open-order.js +69 -0
  167. package/dist/esm/calls/approval/open-order.js.map +1 -0
  168. package/dist/esm/{approval.js → calls/approval/token.js} +5 -70
  169. package/dist/esm/calls/approval/token.js.map +1 -0
  170. package/dist/esm/calls/index.js +16 -0
  171. package/dist/esm/calls/index.js.map +1 -0
  172. package/dist/esm/calls/market/cancel.js +123 -0
  173. package/dist/esm/calls/market/cancel.js.map +1 -0
  174. package/dist/esm/calls/market/claim.js +122 -0
  175. package/dist/esm/calls/market/claim.js.map +1 -0
  176. package/dist/esm/calls/market/limit.js +219 -0
  177. package/dist/esm/calls/market/limit.js.map +1 -0
  178. package/dist/esm/calls/market/market.js +201 -0
  179. package/dist/esm/calls/market/market.js.map +1 -0
  180. package/dist/esm/calls/market/open.js +65 -0
  181. package/dist/esm/calls/market/open.js.map +1 -0
  182. package/dist/esm/calls/pool/burn.js +85 -0
  183. package/dist/esm/calls/pool/burn.js.map +1 -0
  184. package/dist/esm/calls/pool/market-making/adjust.js +65 -0
  185. package/dist/esm/calls/pool/market-making/adjust.js.map +1 -0
  186. package/dist/esm/calls/pool/market-making/pause.js +40 -0
  187. package/dist/esm/calls/pool/market-making/pause.js.map +1 -0
  188. package/dist/esm/calls/pool/market-making/refill.js +37 -0
  189. package/dist/esm/calls/pool/market-making/refill.js.map +1 -0
  190. package/dist/esm/calls/pool/market-making/resume.js +40 -0
  191. package/dist/esm/calls/pool/market-making/resume.js.map +1 -0
  192. package/dist/esm/calls/pool/market-making/strategy.js +75 -0
  193. package/dist/esm/calls/pool/market-making/strategy.js.map +1 -0
  194. package/dist/esm/calls/pool/mint.js +212 -0
  195. package/dist/esm/calls/pool/mint.js.map +1 -0
  196. package/dist/esm/calls/pool/open.js +66 -0
  197. package/dist/esm/calls/pool/open.js.map +1 -0
  198. package/dist/esm/constants/abis/core/book-manager-abi.js.map +1 -0
  199. package/dist/esm/constants/abis/core/book-viewer-abi.js.map +1 -0
  200. package/dist/esm/constants/abis/core/controller-abi.js.map +1 -0
  201. package/dist/esm/constants/abis/rebalancer/minter-abi.js.map +1 -0
  202. package/dist/esm/constants/abis/rebalancer/mock-swap-abi.js.map +1 -0
  203. package/dist/esm/constants/abis/rebalancer/operator-abi.js.map +1 -0
  204. package/dist/esm/constants/abis/rebalancer/rebalancer-abi.js.map +1 -0
  205. package/dist/esm/constants/abis/rebalancer/strategy-abi.js.map +1 -0
  206. package/dist/esm/constants/{addresses.js → chain-configs/addresses.js} +28 -28
  207. package/dist/esm/constants/chain-configs/addresses.js.map +1 -0
  208. package/dist/esm/constants/{chain.js → chain-configs/chain.js} +9 -14
  209. package/dist/esm/constants/chain-configs/chain.js.map +1 -0
  210. package/dist/esm/constants/chain-configs/currency.js +109 -0
  211. package/dist/esm/constants/chain-configs/currency.js.map +1 -0
  212. package/dist/esm/constants/{fee.js → chain-configs/fee.js} +7 -7
  213. package/dist/esm/constants/chain-configs/fee.js.map +1 -0
  214. package/dist/esm/constants/{subgraph.js → chain-configs/subgraph.js} +12 -9
  215. package/dist/esm/constants/chain-configs/subgraph.js.map +1 -0
  216. package/dist/esm/constants/networks/rise-sepolia.js.map +1 -0
  217. package/dist/esm/constants/networks/test-chain.js.map +1 -0
  218. package/dist/esm/constants/permit.js +1 -1
  219. package/dist/esm/constants/permit.js.map +1 -1
  220. package/dist/esm/constants/price.js.map +1 -1
  221. package/dist/esm/entities/analytics/apis/index.js +96 -0
  222. package/dist/esm/entities/analytics/apis/index.js.map +1 -0
  223. package/dist/esm/entities/analytics/types.js +2 -0
  224. package/dist/esm/entities/analytics/types.js.map +1 -0
  225. package/dist/esm/entities/book/apis/index.js +78 -0
  226. package/dist/esm/entities/book/apis/index.js.map +1 -0
  227. package/dist/esm/{model/book.js → entities/book/model.js} +6 -6
  228. package/dist/esm/entities/book/model.js.map +1 -0
  229. package/dist/esm/entities/book/types.js +2 -0
  230. package/dist/esm/entities/book/types.js.map +1 -0
  231. package/dist/esm/{utils → entities/book/utils}/book-id.js +1 -1
  232. package/dist/esm/entities/book/utils/book-id.js.map +1 -0
  233. package/dist/esm/entities/currency/apis/allowance.js +34 -0
  234. package/dist/esm/entities/currency/apis/allowance.js.map +1 -0
  235. package/dist/esm/entities/currency/apis/approval.js +35 -0
  236. package/dist/esm/entities/currency/apis/approval.js.map +1 -0
  237. package/dist/esm/entities/currency/apis/index.js +123 -0
  238. package/dist/esm/entities/currency/apis/index.js.map +1 -0
  239. package/dist/esm/entities/currency/apis/price.js +30 -0
  240. package/dist/esm/entities/currency/apis/price.js.map +1 -0
  241. package/dist/esm/entities/currency/apis/total-supply.js +65 -0
  242. package/dist/esm/entities/currency/apis/total-supply.js.map +1 -0
  243. package/dist/esm/entities/currency/types.js +2 -0
  244. package/dist/esm/entities/currency/types.js.map +1 -0
  245. package/dist/esm/{model/fee-policy.js → entities/fee-policy/model.js} +2 -2
  246. package/dist/esm/entities/fee-policy/model.js.map +1 -0
  247. package/dist/esm/{apis/chart-logs.js → entities/market/apis/chart-log.js} +3 -3
  248. package/dist/esm/entities/market/apis/chart-log.js.map +1 -0
  249. package/dist/esm/entities/market/apis/index.js +29 -0
  250. package/dist/esm/entities/market/apis/index.js.map +1 -0
  251. package/dist/esm/entities/market/apis/snapshot.js +264 -0
  252. package/dist/esm/entities/market/apis/snapshot.js.map +1 -0
  253. package/dist/esm/{model/market.js → entities/market/model.js} +5 -7
  254. package/dist/esm/entities/market/model.js.map +1 -0
  255. package/dist/esm/entities/market/types.js +2 -0
  256. package/dist/esm/entities/market/types.js.map +1 -0
  257. package/dist/esm/{utils/market.js → entities/market/utils/market-id.js} +3 -5
  258. package/dist/esm/entities/market/utils/market-id.js.map +1 -0
  259. package/dist/esm/entities/open-order/apis/index.js +196 -0
  260. package/dist/esm/entities/open-order/apis/index.js.map +1 -0
  261. package/dist/esm/entities/open-order/types.js +2 -0
  262. package/dist/esm/entities/open-order/types.js.map +1 -0
  263. package/dist/esm/entities/open-order/utils/order-id.js +9 -0
  264. package/dist/esm/entities/open-order/utils/order-id.js.map +1 -0
  265. package/dist/esm/entities/pool/apis/index.js +72 -0
  266. package/dist/esm/entities/pool/apis/index.js.map +1 -0
  267. package/dist/esm/entities/pool/apis/snapshot.js +83 -0
  268. package/dist/esm/entities/pool/apis/snapshot.js.map +1 -0
  269. package/dist/esm/entities/pool/apis/strategy.js +30 -0
  270. package/dist/esm/entities/pool/apis/strategy.js.map +1 -0
  271. package/dist/esm/{model/pool.js → entities/pool/model.js} +3 -3
  272. package/dist/esm/entities/pool/model.js.map +1 -0
  273. package/dist/esm/entities/pool/types.js +2 -0
  274. package/dist/esm/entities/pool/types.js.map +1 -0
  275. package/dist/esm/{utils/pool.js → entities/pool/utils/mint.js} +11 -1
  276. package/dist/esm/entities/pool/utils/mint.js.map +1 -0
  277. package/dist/esm/{utils → entities/pool/utils}/pool-key.js +1 -3
  278. package/dist/esm/entities/pool/utils/pool-key.js.map +1 -0
  279. package/dist/esm/index.js +3 -4
  280. package/dist/esm/index.js.map +1 -1
  281. package/dist/esm/types/default-options.js +2 -0
  282. package/dist/esm/types/default-options.js.map +1 -0
  283. package/dist/esm/{type.js → types/index.js} +2 -2
  284. package/dist/esm/types/index.js.map +1 -0
  285. package/dist/esm/types/permit.js +2 -0
  286. package/dist/esm/types/permit.js.map +1 -0
  287. package/dist/esm/types/transaction.js +2 -0
  288. package/dist/esm/types/transaction.js.map +1 -0
  289. package/dist/esm/utils/bigint.js +2 -0
  290. package/dist/esm/utils/bigint.js.map +1 -1
  291. package/dist/esm/utils/{decimals.js → conversion.js} +1 -1
  292. package/dist/esm/utils/conversion.js.map +1 -0
  293. package/dist/esm/utils/index.js +5 -0
  294. package/dist/esm/utils/index.js.map +1 -0
  295. package/dist/esm/utils/prices.js +1 -2
  296. package/dist/esm/utils/prices.js.map +1 -1
  297. package/dist/esm/utils/time.js +4 -1
  298. package/dist/esm/utils/time.js.map +1 -1
  299. package/dist/esm/utils/unit-size.js +2 -2
  300. package/dist/esm/utils/unit-size.js.map +1 -1
  301. package/dist/esm/views/address.js +17 -0
  302. package/dist/esm/views/address.js.map +1 -0
  303. package/dist/esm/views/analytics.js +8 -0
  304. package/dist/esm/views/analytics.js.map +1 -0
  305. package/dist/esm/views/currency.js +42 -0
  306. package/dist/esm/views/currency.js.map +1 -0
  307. package/dist/esm/views/index.js +9 -0
  308. package/dist/esm/views/index.js.map +1 -0
  309. package/dist/esm/views/market/chart-log.js +48 -0
  310. package/dist/esm/views/market/chart-log.js.map +1 -0
  311. package/dist/esm/views/market/index.js +37 -0
  312. package/dist/esm/views/market/index.js.map +1 -0
  313. package/dist/esm/views/market/quote.js +137 -0
  314. package/dist/esm/views/market/quote.js.map +1 -0
  315. package/dist/esm/views/market/snapshot.js +23 -0
  316. package/dist/esm/views/market/snapshot.js.map +1 -0
  317. package/dist/esm/views/market/token.js +23 -0
  318. package/dist/esm/views/market/token.js.map +1 -0
  319. package/dist/esm/views/open-order.js +38 -0
  320. package/dist/esm/views/open-order.js.map +1 -0
  321. package/dist/esm/views/pool/index.js +40 -0
  322. package/dist/esm/views/pool/index.js.map +1 -0
  323. package/dist/esm/views/pool/market-making.js +18 -0
  324. package/dist/esm/views/pool/market-making.js.map +1 -0
  325. package/dist/esm/views/pool/snapshot.js +12 -0
  326. package/dist/esm/views/pool/snapshot.js.map +1 -0
  327. package/dist/esm/views/subgraph.js +33 -0
  328. package/dist/esm/views/subgraph.js.map +1 -0
  329. package/dist/esm/views/tick.js +89 -0
  330. package/dist/esm/views/tick.js.map +1 -0
  331. package/dist/tsconfig.build.tsbuildinfo +1 -1
  332. package/dist/types/calls/approval/open-order.d.ts +33 -0
  333. package/dist/types/calls/approval/open-order.d.ts.map +1 -0
  334. package/dist/types/{approval.d.ts → calls/approval/token.d.ts} +3 -32
  335. package/dist/types/calls/approval/token.d.ts.map +1 -0
  336. package/dist/types/calls/index.d.ts +16 -0
  337. package/dist/types/calls/index.d.ts.map +1 -0
  338. package/dist/types/calls/market/cancel.d.ts +73 -0
  339. package/dist/types/calls/market/cancel.d.ts.map +1 -0
  340. package/dist/types/calls/market/claim.d.ts +73 -0
  341. package/dist/types/calls/market/claim.d.ts.map +1 -0
  342. package/dist/types/calls/market/limit.d.ts +86 -0
  343. package/dist/types/calls/market/limit.d.ts.map +1 -0
  344. package/dist/types/calls/market/market.d.ts +67 -0
  345. package/dist/types/calls/market/market.d.ts.map +1 -0
  346. package/dist/types/calls/market/open.d.ts +31 -0
  347. package/dist/types/calls/market/open.d.ts.map +1 -0
  348. package/dist/types/calls/pool/burn.d.ts +22 -0
  349. package/dist/types/calls/pool/burn.d.ts.map +1 -0
  350. package/dist/types/calls/pool/market-making/adjust.d.ts +22 -0
  351. package/dist/types/calls/pool/market-making/adjust.d.ts.map +1 -0
  352. package/dist/types/calls/pool/market-making/pause.d.ts +14 -0
  353. package/dist/types/calls/pool/market-making/pause.d.ts.map +1 -0
  354. package/dist/types/calls/pool/market-making/refill.d.ts +14 -0
  355. package/dist/types/calls/pool/market-making/refill.d.ts.map +1 -0
  356. package/dist/types/calls/pool/market-making/resume.d.ts +14 -0
  357. package/dist/types/calls/pool/market-making/resume.d.ts.map +1 -0
  358. package/dist/types/calls/pool/market-making/strategy.d.ts +23 -0
  359. package/dist/types/calls/pool/market-making/strategy.d.ts.map +1 -0
  360. package/dist/types/calls/pool/mint.d.ts +29 -0
  361. package/dist/types/calls/pool/mint.d.ts.map +1 -0
  362. package/dist/types/calls/pool/open.d.ts +33 -0
  363. package/dist/types/calls/pool/open.d.ts.map +1 -0
  364. package/dist/types/constants/abis/core/book-manager-abi.d.ts.map +1 -0
  365. package/dist/types/{abis → constants/abis}/core/book-viewer-abi.d.ts.map +1 -1
  366. package/dist/types/{abis → constants/abis}/core/controller-abi.d.ts.map +1 -1
  367. package/dist/types/{abis → constants/abis}/rebalancer/minter-abi.d.ts.map +1 -1
  368. package/dist/types/constants/abis/rebalancer/mock-swap-abi.d.ts.map +1 -0
  369. package/dist/types/{abis → constants/abis}/rebalancer/operator-abi.d.ts.map +1 -1
  370. package/dist/types/{abis → constants/abis}/rebalancer/rebalancer-abi.d.ts.map +1 -1
  371. package/dist/types/{abis → constants/abis}/rebalancer/strategy-abi.d.ts.map +1 -1
  372. package/dist/types/constants/chain-configs/addresses.d.ts.map +1 -0
  373. package/dist/types/constants/{chain.d.ts → chain-configs/chain.d.ts} +0 -4
  374. package/dist/types/constants/chain-configs/chain.d.ts.map +1 -0
  375. package/dist/types/constants/chain-configs/currency.d.ts +19 -0
  376. package/dist/types/constants/chain-configs/currency.d.ts.map +1 -0
  377. package/dist/types/constants/{fee.d.ts → chain-configs/fee.d.ts} +1 -1
  378. package/dist/types/constants/chain-configs/fee.d.ts.map +1 -0
  379. package/dist/types/constants/chain-configs/subgraph.d.ts.map +1 -0
  380. package/dist/types/constants/networks/rise-sepolia.d.ts.map +1 -0
  381. package/dist/types/constants/networks/test-chain.d.ts.map +1 -0
  382. package/dist/types/constants/permit.d.ts +1 -1
  383. package/dist/types/constants/permit.d.ts.map +1 -1
  384. package/dist/types/constants/price.d.ts.map +1 -1
  385. package/dist/types/entities/analytics/apis/index.d.ts +5 -0
  386. package/dist/types/entities/analytics/apis/index.d.ts.map +1 -0
  387. package/dist/types/entities/analytics/types.d.ts +39 -0
  388. package/dist/types/entities/analytics/types.d.ts.map +1 -0
  389. package/dist/types/entities/book/apis/index.d.ts +6 -0
  390. package/dist/types/entities/book/apis/index.d.ts.map +1 -0
  391. package/dist/types/{model/book.d.ts → entities/book/model.d.ts} +11 -7
  392. package/dist/types/entities/book/model.d.ts.map +1 -0
  393. package/dist/types/entities/book/types.d.ts +14 -0
  394. package/dist/types/entities/book/types.d.ts.map +1 -0
  395. package/dist/types/{utils → entities/book/utils}/book-id.d.ts +1 -1
  396. package/dist/types/entities/book/utils/book-id.d.ts.map +1 -0
  397. package/dist/types/entities/currency/apis/allowance.d.ts.map +1 -0
  398. package/dist/types/{utils → entities/currency/apis}/approval.d.ts +1 -1
  399. package/dist/types/entities/currency/apis/approval.d.ts.map +1 -0
  400. package/dist/types/entities/currency/apis/index.d.ts +6 -0
  401. package/dist/types/entities/currency/apis/index.d.ts.map +1 -0
  402. package/dist/types/entities/currency/apis/price.d.ts +10 -0
  403. package/dist/types/entities/currency/apis/price.d.ts.map +1 -0
  404. package/dist/types/entities/currency/apis/total-supply.d.ts +6 -0
  405. package/dist/types/entities/currency/apis/total-supply.d.ts.map +1 -0
  406. package/dist/types/entities/currency/types.d.ts +32 -0
  407. package/dist/types/entities/currency/types.d.ts.map +1 -0
  408. package/dist/types/{model/fee-policy.d.ts → entities/fee-policy/model.d.ts} +1 -1
  409. package/dist/types/entities/fee-policy/model.d.ts.map +1 -0
  410. package/dist/types/{apis/chart-logs.d.ts → entities/market/apis/chart-log.d.ts} +4 -3
  411. package/dist/types/entities/market/apis/chart-log.d.ts.map +1 -0
  412. package/dist/types/entities/market/apis/index.d.ts +5 -0
  413. package/dist/types/entities/market/apis/index.d.ts.map +1 -0
  414. package/dist/types/entities/market/apis/snapshot.d.ts +6 -0
  415. package/dist/types/entities/market/apis/snapshot.d.ts.map +1 -0
  416. package/dist/types/{model/market.d.ts → entities/market/model.d.ts} +16 -11
  417. package/dist/types/entities/market/model.d.ts.map +1 -0
  418. package/dist/types/entities/market/types.d.ts +38 -0
  419. package/dist/types/entities/market/types.d.ts.map +1 -0
  420. package/dist/types/{utils/market.d.ts → entities/market/utils/market-id.d.ts} +2 -2
  421. package/dist/types/entities/market/utils/market-id.d.ts.map +1 -0
  422. package/dist/types/{apis/open-order.d.ts → entities/open-order/apis/index.d.ts} +6 -3
  423. package/dist/types/entities/open-order/apis/index.d.ts.map +1 -0
  424. package/dist/types/entities/open-order/types.d.ts +22 -0
  425. package/dist/types/entities/open-order/types.d.ts.map +1 -0
  426. package/dist/types/entities/open-order/utils/order-id.d.ts +6 -0
  427. package/dist/types/entities/open-order/utils/order-id.d.ts.map +1 -0
  428. package/dist/types/entities/pool/apis/index.d.ts +6 -0
  429. package/dist/types/entities/pool/apis/index.d.ts.map +1 -0
  430. package/dist/types/entities/pool/apis/snapshot.d.ts +5 -0
  431. package/dist/types/entities/pool/apis/snapshot.d.ts.map +1 -0
  432. package/dist/types/entities/pool/apis/strategy.d.ts +6 -0
  433. package/dist/types/entities/pool/apis/strategy.d.ts.map +1 -0
  434. package/dist/types/{model/pool.d.ts → entities/pool/model.d.ts} +4 -32
  435. package/dist/types/entities/pool/model.d.ts.map +1 -0
  436. package/dist/types/entities/pool/types.d.ts +70 -0
  437. package/dist/types/entities/pool/types.d.ts.map +1 -0
  438. package/dist/types/{utils/pool.d.ts → entities/pool/utils/mint.d.ts} +4 -2
  439. package/dist/types/entities/pool/utils/mint.d.ts.map +1 -0
  440. package/dist/types/entities/pool/utils/pool-key.d.ts +2 -0
  441. package/dist/types/entities/pool/utils/pool-key.d.ts.map +1 -0
  442. package/dist/types/index.d.ts +3 -4
  443. package/dist/types/index.d.ts.map +1 -1
  444. package/dist/types/types/default-options.d.ts +10 -0
  445. package/dist/types/types/default-options.d.ts.map +1 -0
  446. package/dist/types/types/index.d.ts +24 -0
  447. package/dist/types/types/index.d.ts.map +1 -0
  448. package/dist/types/types/permit.d.ts +12 -0
  449. package/dist/types/types/permit.d.ts.map +1 -0
  450. package/dist/types/types/transaction.d.ts +10 -0
  451. package/dist/types/types/transaction.d.ts.map +1 -0
  452. package/dist/types/utils/bigint.d.ts +1 -0
  453. package/dist/types/utils/bigint.d.ts.map +1 -1
  454. package/dist/types/utils/build-transaction.d.ts +1 -1
  455. package/dist/types/utils/build-transaction.d.ts.map +1 -1
  456. package/dist/types/utils/{decimals.d.ts → conversion.d.ts} +1 -1
  457. package/dist/types/utils/conversion.d.ts.map +1 -0
  458. package/dist/types/utils/index.d.ts +5 -0
  459. package/dist/types/utils/index.d.ts.map +1 -0
  460. package/dist/types/utils/prices.d.ts +1 -1
  461. package/dist/types/utils/prices.d.ts.map +1 -1
  462. package/dist/types/utils/time.d.ts +2 -0
  463. package/dist/types/utils/time.d.ts.map +1 -1
  464. package/dist/types/utils/unit-size.d.ts +2 -2
  465. package/dist/types/utils/unit-size.d.ts.map +1 -1
  466. package/dist/types/views/address.d.ts +25 -0
  467. package/dist/types/views/address.d.ts.map +1 -0
  468. package/dist/types/views/analytics.d.ts +10 -0
  469. package/dist/types/views/analytics.d.ts.map +1 -0
  470. package/dist/types/views/currency.d.ts +51 -0
  471. package/dist/types/views/currency.d.ts.map +1 -0
  472. package/dist/types/views/index.d.ts +9 -0
  473. package/dist/types/views/index.d.ts.map +1 -0
  474. package/dist/types/views/market/chart-log.d.ts +56 -0
  475. package/dist/types/views/market/chart-log.d.ts.map +1 -0
  476. package/dist/types/views/market/index.d.ts +34 -0
  477. package/dist/types/views/market/index.d.ts.map +1 -0
  478. package/dist/types/views/market/quote.d.ts +90 -0
  479. package/dist/types/views/market/quote.d.ts.map +1 -0
  480. package/dist/types/views/market/snapshot.d.ts +17 -0
  481. package/dist/types/views/market/snapshot.d.ts.map +1 -0
  482. package/dist/types/views/market/token.d.ts +24 -0
  483. package/dist/types/views/market/token.d.ts.map +1 -0
  484. package/dist/types/views/open-order.d.ts +41 -0
  485. package/dist/types/views/open-order.d.ts.map +1 -0
  486. package/dist/types/views/pool/index.d.ts +36 -0
  487. package/dist/types/views/pool/index.d.ts.map +1 -0
  488. package/dist/types/views/pool/market-making.d.ts +13 -0
  489. package/dist/types/views/pool/market-making.d.ts.map +1 -0
  490. package/dist/types/views/pool/snapshot.d.ts +10 -0
  491. package/dist/types/views/pool/snapshot.d.ts.map +1 -0
  492. package/dist/types/views/subgraph.d.ts +32 -0
  493. package/dist/types/views/subgraph.d.ts.map +1 -0
  494. package/dist/types/views/tick.d.ts +77 -0
  495. package/dist/types/views/tick.d.ts.map +1 -0
  496. package/package.json +1 -1
  497. package/dist/cjs/abis/core/book-manager-abi.js.map +0 -1
  498. package/dist/cjs/abis/core/book-viewer-abi.js.map +0 -1
  499. package/dist/cjs/abis/core/controller-abi.js.map +0 -1
  500. package/dist/cjs/abis/rebalancer/minter-abi.js.map +0 -1
  501. package/dist/cjs/abis/rebalancer/mock-swap-abi.js.map +0 -1
  502. package/dist/cjs/abis/rebalancer/operator-abi.js.map +0 -1
  503. package/dist/cjs/abis/rebalancer/rebalancer-abi.js.map +0 -1
  504. package/dist/cjs/abis/rebalancer/strategy-abi.js.map +0 -1
  505. package/dist/cjs/apis/chart-logs.js.map +0 -1
  506. package/dist/cjs/apis/market.js +0 -89
  507. package/dist/cjs/apis/market.js.map +0 -1
  508. package/dist/cjs/apis/odos.js +0 -100
  509. package/dist/cjs/apis/odos.js.map +0 -1
  510. package/dist/cjs/apis/open-order.js +0 -131
  511. package/dist/cjs/apis/open-order.js.map +0 -1
  512. package/dist/cjs/apis/pool.js +0 -95
  513. package/dist/cjs/apis/pool.js.map +0 -1
  514. package/dist/cjs/apis/strategy.js.map +0 -1
  515. package/dist/cjs/approval.js +0 -102
  516. package/dist/cjs/approval.js.map +0 -1
  517. package/dist/cjs/call.js +0 -1057
  518. package/dist/cjs/call.js.map +0 -1
  519. package/dist/cjs/constants/action.js +0 -14
  520. package/dist/cjs/constants/action.js.map +0 -1
  521. package/dist/cjs/constants/addresses.js.map +0 -1
  522. package/dist/cjs/constants/chain.js.map +0 -1
  523. package/dist/cjs/constants/currency.js +0 -95
  524. package/dist/cjs/constants/currency.js.map +0 -1
  525. package/dist/cjs/constants/fee.js +0 -26
  526. package/dist/cjs/constants/fee.js.map +0 -1
  527. package/dist/cjs/constants/rise-sepolia.js.map +0 -1
  528. package/dist/cjs/constants/subgraph.js.map +0 -1
  529. package/dist/cjs/constants/test-chain.js.map +0 -1
  530. package/dist/cjs/model/book.js.map +0 -1
  531. package/dist/cjs/model/chart-log.js.map +0 -1
  532. package/dist/cjs/model/currency.js.map +0 -1
  533. package/dist/cjs/model/depth.js.map +0 -1
  534. package/dist/cjs/model/fee-policy.js.map +0 -1
  535. package/dist/cjs/model/market.js.map +0 -1
  536. package/dist/cjs/model/open-order.js.map +0 -1
  537. package/dist/cjs/model/pool.js.map +0 -1
  538. package/dist/cjs/type.js.map +0 -1
  539. package/dist/cjs/utils/allowance.js +0 -39
  540. package/dist/cjs/utils/allowance.js.map +0 -1
  541. package/dist/cjs/utils/approval.js +0 -40
  542. package/dist/cjs/utils/approval.js.map +0 -1
  543. package/dist/cjs/utils/book-id.js.map +0 -1
  544. package/dist/cjs/utils/currency.js +0 -165
  545. package/dist/cjs/utils/currency.js.map +0 -1
  546. package/dist/cjs/utils/decimals.js.map +0 -1
  547. package/dist/cjs/utils/market.js.map +0 -1
  548. package/dist/cjs/utils/open.js +0 -46
  549. package/dist/cjs/utils/open.js.map +0 -1
  550. package/dist/cjs/utils/order.js +0 -97
  551. package/dist/cjs/utils/order.js.map +0 -1
  552. package/dist/cjs/utils/pool-key.js.map +0 -1
  553. package/dist/cjs/utils/pool.js.map +0 -1
  554. package/dist/cjs/utils/quotes.js +0 -16
  555. package/dist/cjs/utils/quotes.js.map +0 -1
  556. package/dist/cjs/utils/time-series.js +0 -31
  557. package/dist/cjs/utils/time-series.js.map +0 -1
  558. package/dist/cjs/utils.js.map +0 -1
  559. package/dist/cjs/view.js +0 -349
  560. package/dist/cjs/view.js.map +0 -1
  561. package/dist/esm/abis/core/book-manager-abi.js.map +0 -1
  562. package/dist/esm/abis/core/book-viewer-abi.js.map +0 -1
  563. package/dist/esm/abis/core/controller-abi.js.map +0 -1
  564. package/dist/esm/abis/rebalancer/minter-abi.js.map +0 -1
  565. package/dist/esm/abis/rebalancer/mock-swap-abi.js.map +0 -1
  566. package/dist/esm/abis/rebalancer/operator-abi.js.map +0 -1
  567. package/dist/esm/abis/rebalancer/rebalancer-abi.js.map +0 -1
  568. package/dist/esm/abis/rebalancer/strategy-abi.js.map +0 -1
  569. package/dist/esm/apis/chart-logs.js.map +0 -1
  570. package/dist/esm/apis/market.js +0 -85
  571. package/dist/esm/apis/market.js.map +0 -1
  572. package/dist/esm/apis/odos.js +0 -94
  573. package/dist/esm/apis/odos.js.map +0 -1
  574. package/dist/esm/apis/open-order.js +0 -129
  575. package/dist/esm/apis/open-order.js.map +0 -1
  576. package/dist/esm/apis/pool.js +0 -90
  577. package/dist/esm/apis/pool.js.map +0 -1
  578. package/dist/esm/apis/strategy.js +0 -48
  579. package/dist/esm/apis/strategy.js.map +0 -1
  580. package/dist/esm/approval.js.map +0 -1
  581. package/dist/esm/call.js +0 -1257
  582. package/dist/esm/call.js.map +0 -1
  583. package/dist/esm/constants/action.js +0 -11
  584. package/dist/esm/constants/action.js.map +0 -1
  585. package/dist/esm/constants/addresses.js.map +0 -1
  586. package/dist/esm/constants/chain.js.map +0 -1
  587. package/dist/esm/constants/currency.js +0 -94
  588. package/dist/esm/constants/currency.js.map +0 -1
  589. package/dist/esm/constants/fee.js.map +0 -1
  590. package/dist/esm/constants/rise-sepolia.js.map +0 -1
  591. package/dist/esm/constants/subgraph.js.map +0 -1
  592. package/dist/esm/constants/test-chain.js.map +0 -1
  593. package/dist/esm/model/book.js.map +0 -1
  594. package/dist/esm/model/chart-log.js +0 -2
  595. package/dist/esm/model/chart-log.js.map +0 -1
  596. package/dist/esm/model/currency.js +0 -2
  597. package/dist/esm/model/currency.js.map +0 -1
  598. package/dist/esm/model/depth.js +0 -2
  599. package/dist/esm/model/depth.js.map +0 -1
  600. package/dist/esm/model/fee-policy.js.map +0 -1
  601. package/dist/esm/model/market.js.map +0 -1
  602. package/dist/esm/model/open-order.js +0 -2
  603. package/dist/esm/model/open-order.js.map +0 -1
  604. package/dist/esm/model/pool.js.map +0 -1
  605. package/dist/esm/type.js.map +0 -1
  606. package/dist/esm/utils/allowance.js +0 -35
  607. package/dist/esm/utils/allowance.js.map +0 -1
  608. package/dist/esm/utils/approval.js +0 -36
  609. package/dist/esm/utils/approval.js.map +0 -1
  610. package/dist/esm/utils/book-id.js.map +0 -1
  611. package/dist/esm/utils/currency.js +0 -160
  612. package/dist/esm/utils/currency.js.map +0 -1
  613. package/dist/esm/utils/decimals.js.map +0 -1
  614. package/dist/esm/utils/market.js.map +0 -1
  615. package/dist/esm/utils/open.js +0 -42
  616. package/dist/esm/utils/open.js.map +0 -1
  617. package/dist/esm/utils/order.js +0 -92
  618. package/dist/esm/utils/order.js.map +0 -1
  619. package/dist/esm/utils/pool-key.js.map +0 -1
  620. package/dist/esm/utils/pool.js.map +0 -1
  621. package/dist/esm/utils/quotes.js +0 -12
  622. package/dist/esm/utils/quotes.js.map +0 -1
  623. package/dist/esm/utils/time-series.js +0 -27
  624. package/dist/esm/utils/time-series.js.map +0 -1
  625. package/dist/esm/utils.js +0 -5
  626. package/dist/esm/utils.js.map +0 -1
  627. package/dist/esm/view.js +0 -549
  628. package/dist/esm/view.js.map +0 -1
  629. package/dist/types/abis/core/book-manager-abi.d.ts.map +0 -1
  630. package/dist/types/abis/rebalancer/mock-swap-abi.d.ts.map +0 -1
  631. package/dist/types/apis/chart-logs.d.ts.map +0 -1
  632. package/dist/types/apis/market.d.ts +0 -5
  633. package/dist/types/apis/market.d.ts.map +0 -1
  634. package/dist/types/apis/odos.d.ts +0 -28
  635. package/dist/types/apis/odos.d.ts.map +0 -1
  636. package/dist/types/apis/open-order.d.ts.map +0 -1
  637. package/dist/types/apis/pool.d.ts +0 -11
  638. package/dist/types/apis/pool.d.ts.map +0 -1
  639. package/dist/types/apis/strategy.d.ts +0 -6
  640. package/dist/types/apis/strategy.d.ts.map +0 -1
  641. package/dist/types/approval.d.ts.map +0 -1
  642. package/dist/types/call.d.ts +0 -465
  643. package/dist/types/call.d.ts.map +0 -1
  644. package/dist/types/constants/action.d.ts +0 -10
  645. package/dist/types/constants/action.d.ts.map +0 -1
  646. package/dist/types/constants/addresses.d.ts.map +0 -1
  647. package/dist/types/constants/chain.d.ts.map +0 -1
  648. package/dist/types/constants/currency.d.ts +0 -16
  649. package/dist/types/constants/currency.d.ts.map +0 -1
  650. package/dist/types/constants/fee.d.ts.map +0 -1
  651. package/dist/types/constants/rise-sepolia.d.ts.map +0 -1
  652. package/dist/types/constants/subgraph.d.ts.map +0 -1
  653. package/dist/types/constants/test-chain.d.ts.map +0 -1
  654. package/dist/types/model/book.d.ts.map +0 -1
  655. package/dist/types/model/chart-log.d.ts +0 -9
  656. package/dist/types/model/chart-log.d.ts.map +0 -1
  657. package/dist/types/model/currency.d.ts +0 -14
  658. package/dist/types/model/currency.d.ts.map +0 -1
  659. package/dist/types/model/depth.d.ts +0 -10
  660. package/dist/types/model/depth.d.ts.map +0 -1
  661. package/dist/types/model/fee-policy.d.ts.map +0 -1
  662. package/dist/types/model/market.d.ts.map +0 -1
  663. package/dist/types/model/open-order.d.ts +0 -50
  664. package/dist/types/model/open-order.d.ts.map +0 -1
  665. package/dist/types/model/pool.d.ts.map +0 -1
  666. package/dist/types/type.d.ts +0 -159
  667. package/dist/types/type.d.ts.map +0 -1
  668. package/dist/types/utils/allowance.d.ts.map +0 -1
  669. package/dist/types/utils/approval.d.ts.map +0 -1
  670. package/dist/types/utils/book-id.d.ts.map +0 -1
  671. package/dist/types/utils/currency.d.ts +0 -8
  672. package/dist/types/utils/currency.d.ts.map +0 -1
  673. package/dist/types/utils/decimals.d.ts.map +0 -1
  674. package/dist/types/utils/market.d.ts.map +0 -1
  675. package/dist/types/utils/open.d.ts +0 -4
  676. package/dist/types/utils/open.d.ts.map +0 -1
  677. package/dist/types/utils/order.d.ts +0 -10
  678. package/dist/types/utils/order.d.ts.map +0 -1
  679. package/dist/types/utils/pool-key.d.ts +0 -3
  680. package/dist/types/utils/pool-key.d.ts.map +0 -1
  681. package/dist/types/utils/pool.d.ts.map +0 -1
  682. package/dist/types/utils/quotes.d.ts +0 -2
  683. package/dist/types/utils/quotes.d.ts.map +0 -1
  684. package/dist/types/utils/time-series.d.ts +0 -4
  685. package/dist/types/utils/time-series.d.ts.map +0 -1
  686. package/dist/types/utils.d.ts +0 -5
  687. package/dist/types/utils.d.ts.map +0 -1
  688. package/dist/types/view.d.ts +0 -423
  689. package/dist/types/view.d.ts.map +0 -1
  690. /package/dist/cjs/{abis → constants/abis}/core/book-manager-abi.js +0 -0
  691. /package/dist/cjs/{abis → constants/abis}/core/book-viewer-abi.js +0 -0
  692. /package/dist/cjs/{abis → constants/abis}/core/controller-abi.js +0 -0
  693. /package/dist/cjs/{abis → constants/abis}/rebalancer/minter-abi.js +0 -0
  694. /package/dist/cjs/{abis → constants/abis}/rebalancer/mock-swap-abi.js +0 -0
  695. /package/dist/cjs/{abis → constants/abis}/rebalancer/operator-abi.js +0 -0
  696. /package/dist/cjs/{abis → constants/abis}/rebalancer/rebalancer-abi.js +0 -0
  697. /package/dist/cjs/{abis → constants/abis}/rebalancer/strategy-abi.js +0 -0
  698. /package/dist/cjs/constants/{rise-sepolia.js → networks/rise-sepolia.js} +0 -0
  699. /package/dist/cjs/constants/{test-chain.js → networks/test-chain.js} +0 -0
  700. /package/dist/esm/{abis → constants/abis}/core/book-manager-abi.js +0 -0
  701. /package/dist/esm/{abis → constants/abis}/core/book-viewer-abi.js +0 -0
  702. /package/dist/esm/{abis → constants/abis}/core/controller-abi.js +0 -0
  703. /package/dist/esm/{abis → constants/abis}/rebalancer/minter-abi.js +0 -0
  704. /package/dist/esm/{abis → constants/abis}/rebalancer/mock-swap-abi.js +0 -0
  705. /package/dist/esm/{abis → constants/abis}/rebalancer/operator-abi.js +0 -0
  706. /package/dist/esm/{abis → constants/abis}/rebalancer/rebalancer-abi.js +0 -0
  707. /package/dist/esm/{abis → constants/abis}/rebalancer/strategy-abi.js +0 -0
  708. /package/dist/esm/constants/{rise-sepolia.js → networks/rise-sepolia.js} +0 -0
  709. /package/dist/esm/constants/{test-chain.js → networks/test-chain.js} +0 -0
  710. /package/dist/types/{abis → constants/abis}/core/book-manager-abi.d.ts +0 -0
  711. /package/dist/types/{abis → constants/abis}/core/book-viewer-abi.d.ts +0 -0
  712. /package/dist/types/{abis → constants/abis}/core/controller-abi.d.ts +0 -0
  713. /package/dist/types/{abis → constants/abis}/rebalancer/minter-abi.d.ts +0 -0
  714. /package/dist/types/{abis → constants/abis}/rebalancer/mock-swap-abi.d.ts +0 -0
  715. /package/dist/types/{abis → constants/abis}/rebalancer/operator-abi.d.ts +0 -0
  716. /package/dist/types/{abis → constants/abis}/rebalancer/rebalancer-abi.d.ts +0 -0
  717. /package/dist/types/{abis → constants/abis}/rebalancer/strategy-abi.d.ts +0 -0
  718. /package/dist/types/constants/{addresses.d.ts → chain-configs/addresses.d.ts} +0 -0
  719. /package/dist/types/constants/{subgraph.d.ts → chain-configs/subgraph.d.ts} +0 -0
  720. /package/dist/types/constants/{rise-sepolia.d.ts → networks/rise-sepolia.d.ts} +0 -0
  721. /package/dist/types/constants/{test-chain.d.ts → networks/test-chain.d.ts} +0 -0
  722. /package/dist/types/{utils → entities/currency/apis}/allowance.d.ts +0 -0
@@ -0,0 +1,264 @@
1
+ import { getAddress, isAddressEqual } from 'viem';
2
+ import { Subgraph } from '../../../constants/chain-configs/subgraph';
3
+ import { getQuoteToken } from '../../../views';
4
+ import { fetchTotalSupplyMap } from '../../currency/apis/total-supply';
5
+ import { getDailyStartTimestampInSeconds } from '../../../utils/time';
6
+ import { convertTokenToDecimal } from '../../../utils/bigint';
7
+ export const fetchMarketSnapshot = async (publicClient, chainId, token0, token1, timestampInSeconds) => {
8
+ const dayStartTimestamp = getDailyStartTimestampInSeconds(timestampInSeconds);
9
+ const { data: { bookDayDatas }, } = await Subgraph.get(chainId, 'getTopMarketSnapshot', 'query getMarkets($date: Int!, $bases: [String!]!, $quotes: [String!]!) { bookDayDatas( first: 200 orderBy: volumeUSD orderDirection: desc where: {date: $date, book_: {base_in: $bases, quote_in: $quotes}} ) { volumeUSD open close book { id totalValueLockedUSD price inversePrice lastTakenTimestamp base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } createdAtTimestamp } } }', {
10
+ date: dayStartTimestamp,
11
+ bases: [token0, token1].map((address) => address.toLowerCase()),
12
+ quotes: [token0, token1].map((address) => address.toLowerCase()),
13
+ });
14
+ if (bookDayDatas.length >= 3) {
15
+ // TODO: check fee policy if needed
16
+ console.warn(`[fetchMarketSnapshot] too many bookDayDatas for ${token0}/${token1}`);
17
+ }
18
+ const totalSupplyMap = await fetchTotalSupplyMap(publicClient, chainId, [token0, token1].map((address) => getAddress(address)));
19
+ const bidBook = bookDayDatas.find(({ book: { quote, base } }) => isAddressEqual(getAddress(quote.id), getQuoteToken({
20
+ chainId,
21
+ token0: getAddress(base.id),
22
+ token1: getAddress(quote.id),
23
+ })));
24
+ const askBook = bookDayDatas.find(({ book: { quote, base } }) => isAddressEqual(getAddress(base.id), getQuoteToken({
25
+ chainId,
26
+ token0: getAddress(quote.id),
27
+ token1: getAddress(base.id),
28
+ })));
29
+ if (bidBook && askBook) {
30
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(bidBook.book.base.id)] ?? 0n), Number(bidBook.book.base.decimals));
31
+ const isBidNewer = Number(bidBook.book.lastTakenTimestamp) >=
32
+ Number(askBook.book.lastTakenTimestamp);
33
+ return {
34
+ chainId,
35
+ marketId: `${bidBook.book.base.symbol}/${bidBook.book.quote.symbol}`,
36
+ base: {
37
+ address: getAddress(bidBook.book.base.id),
38
+ name: bidBook.book.base.name,
39
+ symbol: bidBook.book.base.symbol,
40
+ decimals: Number(bidBook.book.base.decimals),
41
+ },
42
+ quote: {
43
+ address: getAddress(bidBook.book.quote.id),
44
+ name: bidBook.book.quote.name,
45
+ symbol: bidBook.book.quote.symbol,
46
+ decimals: Number(bidBook.book.quote.decimals),
47
+ },
48
+ price: isBidNewer
49
+ ? Number(bidBook.book.price)
50
+ : Number(askBook.book.inversePrice),
51
+ priceUSD: isBidNewer
52
+ ? Number(bidBook.book.base.priceUSD)
53
+ : Number(askBook.book.quote.priceUSD),
54
+ volume24hUSD: Number(bidBook.volumeUSD) + Number(askBook.volumeUSD),
55
+ totalValueLockedUSD: Number(bidBook.book.totalValueLockedUSD) +
56
+ Number(askBook.book.totalValueLockedUSD),
57
+ priceChange24h: isBidNewer && Number(bidBook.open) > 0
58
+ ? Number(bidBook.close) / Number(bidBook.open) - 1
59
+ : !isBidNewer && Number(askBook.close) > 0
60
+ ? Number(askBook.open) / Number(askBook.close) - 1
61
+ : 0,
62
+ createdAtTimestamp: Math.min(Number(bidBook.book.createdAtTimestamp), Number(askBook.book.createdAtTimestamp)),
63
+ fdv: baseTotalSupply *
64
+ (isBidNewer
65
+ ? Number(bidBook.book.base.priceUSD)
66
+ : Number(askBook.book.quote.priceUSD)),
67
+ bidBookUpdatedAt: Number(bidBook.book.lastTakenTimestamp),
68
+ askBookUpdatedAt: Number(askBook.book.lastTakenTimestamp),
69
+ };
70
+ }
71
+ else if (bidBook) {
72
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(bidBook.book.base.id)] ?? 0n), Number(bidBook.book.base.decimals));
73
+ return {
74
+ chainId,
75
+ marketId: `${bidBook.book.base.symbol}/${bidBook.book.quote.symbol}`,
76
+ base: {
77
+ address: getAddress(bidBook.book.base.id),
78
+ name: bidBook.book.base.name,
79
+ symbol: bidBook.book.base.symbol,
80
+ decimals: Number(bidBook.book.base.decimals),
81
+ },
82
+ quote: {
83
+ address: getAddress(bidBook.book.quote.id),
84
+ name: bidBook.book.quote.name,
85
+ symbol: bidBook.book.quote.symbol,
86
+ decimals: Number(bidBook.book.quote.decimals),
87
+ },
88
+ price: Number(bidBook.book.price) || 0,
89
+ priceUSD: Number(bidBook.book.base.priceUSD) || 0,
90
+ volume24hUSD: Number(bidBook.volumeUSD) || 0,
91
+ totalValueLockedUSD: Number(bidBook.book.totalValueLockedUSD) || 0,
92
+ priceChange24h: Number(bidBook.open) > 0
93
+ ? Number(bidBook.close) / Number(bidBook.open) - 1
94
+ : 0,
95
+ createdAtTimestamp: Number(bidBook.book.createdAtTimestamp) || 0,
96
+ fdv: baseTotalSupply * Number(bidBook.book.base.priceUSD) || 0,
97
+ bidBookUpdatedAt: Number(bidBook.book.lastTakenTimestamp) || 0,
98
+ askBookUpdatedAt: 0,
99
+ };
100
+ }
101
+ else if (askBook) {
102
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(askBook.book.quote.id)] ?? 0n), Number(askBook.book.quote.decimals));
103
+ return {
104
+ chainId,
105
+ marketId: `${askBook.book.quote.symbol}/${askBook.book.base.symbol}`,
106
+ base: {
107
+ address: getAddress(askBook.book.quote.id),
108
+ name: askBook.book.quote.name,
109
+ symbol: askBook.book.quote.symbol,
110
+ decimals: Number(askBook.book.quote.decimals),
111
+ },
112
+ quote: {
113
+ address: getAddress(askBook.book.base.id),
114
+ name: askBook.book.base.name,
115
+ symbol: askBook.book.base.symbol,
116
+ decimals: Number(askBook.book.base.decimals),
117
+ },
118
+ price: Number(askBook.book.inversePrice) || 0,
119
+ priceUSD: Number(askBook.book.quote.priceUSD) || 0,
120
+ volume24hUSD: Number(askBook.volumeUSD) || 0,
121
+ totalValueLockedUSD: Number(askBook.book.totalValueLockedUSD) || 0,
122
+ priceChange24h: Number(askBook.close) > 0
123
+ ? Number(askBook.open) / Number(askBook.close) - 1
124
+ : 0,
125
+ createdAtTimestamp: Number(askBook.book.createdAtTimestamp) || 0,
126
+ fdv: baseTotalSupply * Number(askBook.book.quote.priceUSD) || 0,
127
+ bidBookUpdatedAt: 0,
128
+ askBookUpdatedAt: Number(askBook.book.lastTakenTimestamp) || 0,
129
+ };
130
+ }
131
+ throw new Error('No bookDayDatas found');
132
+ };
133
+ export const fetchMarketSnapshots = async (publicClient, chainId, timestampInSeconds) => {
134
+ const dayStartTimestamp = getDailyStartTimestampInSeconds(timestampInSeconds);
135
+ const { data: { bookDayDatas }, } = await Subgraph.get(chainId, 'getTopMarketSnapshots', 'query getMarkets($date: Int!) { bookDayDatas( first: 200 orderBy: volumeUSD orderDirection: desc where: {date: $date} ) { volumeUSD open close book { id totalValueLockedUSD price inversePrice lastTakenTimestamp base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } createdAtTimestamp } } }', {
136
+ date: dayStartTimestamp,
137
+ });
138
+ const bidBookDayDataList = bookDayDatas.filter(({ book: { quote, base } }) => isAddressEqual(getAddress(quote.id), getQuoteToken({
139
+ chainId,
140
+ token0: getAddress(base.id),
141
+ token1: getAddress(quote.id),
142
+ })));
143
+ const askBookDayDataList = bookDayDatas.filter(({ book: { quote, base } }) => isAddressEqual(getAddress(base.id), getQuoteToken({
144
+ chainId,
145
+ token0: getAddress(quote.id),
146
+ token1: getAddress(base.id),
147
+ })));
148
+ const tokenAddresses = [
149
+ ...new Set(bookDayDatas
150
+ .map(({ book: { base, quote } }) => [
151
+ getAddress(base.id),
152
+ getAddress(quote.id),
153
+ ])
154
+ .flat()),
155
+ ];
156
+ const totalSupplyMap = await fetchTotalSupplyMap(publicClient, chainId, tokenAddresses);
157
+ return [
158
+ ...bidBookDayDataList.map((bidBook) => {
159
+ const quoteCurrency = {
160
+ address: getAddress(bidBook.book.quote.id),
161
+ name: bidBook.book.quote.name,
162
+ symbol: bidBook.book.quote.symbol,
163
+ decimals: Number(bidBook.book.quote.decimals),
164
+ };
165
+ const baseCurrency = {
166
+ address: getAddress(bidBook.book.base.id),
167
+ name: bidBook.book.base.name,
168
+ symbol: bidBook.book.base.symbol,
169
+ decimals: Number(bidBook.book.base.decimals),
170
+ };
171
+ const askBook = askBookDayDataList.find((askBook) => isAddressEqual(getAddress(askBook.book.quote.id), baseCurrency.address) &&
172
+ isAddressEqual(getAddress(askBook.book.base.id), quoteCurrency.address));
173
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[baseCurrency.address] ?? 0n), baseCurrency.decimals);
174
+ const isBidNewer = Number(bidBook.book.lastTakenTimestamp) >=
175
+ Number(askBook?.book.lastTakenTimestamp ?? 0);
176
+ return {
177
+ chainId,
178
+ marketId: `${baseCurrency.symbol}/${quoteCurrency.symbol}`,
179
+ base: baseCurrency,
180
+ quote: quoteCurrency,
181
+ price: isBidNewer
182
+ ? Number(bidBook.book.price)
183
+ : Number(askBook?.book.inversePrice),
184
+ priceUSD: isBidNewer
185
+ ? Number(bidBook.book.base.priceUSD)
186
+ : Number(askBook?.book.quote.priceUSD),
187
+ priceChange24h: isBidNewer && Number(bidBook.open) > 0
188
+ ? Number(bidBook.close) / Number(bidBook.open) - 1
189
+ : !isBidNewer && askBook && Number(askBook.close) > 0
190
+ ? Number(askBook.open) / Number(askBook.close) - 1
191
+ : 0,
192
+ volume24hUSD: askBook
193
+ ? Number(askBook.volumeUSD) + Number(bidBook.volumeUSD)
194
+ : Number(bidBook.volumeUSD),
195
+ totalValueLockedUSD: askBook
196
+ ? Number(askBook.book.totalValueLockedUSD) +
197
+ Number(bidBook.book.totalValueLockedUSD)
198
+ : Number(bidBook.book.totalValueLockedUSD),
199
+ createdAtTimestamp: askBook
200
+ ? Math.min(Number(bidBook.book.createdAtTimestamp), Number(askBook.book.createdAtTimestamp))
201
+ : Number(bidBook.book.createdAtTimestamp),
202
+ fdv: isBidNewer
203
+ ? baseTotalSupply * Number(bidBook.book.base.priceUSD)
204
+ : baseTotalSupply * Number(askBook?.book.quote.priceUSD),
205
+ bidBookUpdatedAt: Number(bidBook.book.lastTakenTimestamp),
206
+ askBookUpdatedAt: Number(askBook?.book.lastTakenTimestamp ?? 0),
207
+ };
208
+ }),
209
+ ...askBookDayDataList.map((askBook) => {
210
+ const quoteCurrency = {
211
+ address: getAddress(askBook.book.base.id),
212
+ name: askBook.book.base.name,
213
+ symbol: askBook.book.base.symbol,
214
+ decimals: Number(askBook.book.base.decimals),
215
+ };
216
+ const baseCurrency = {
217
+ address: getAddress(askBook.book.quote.id),
218
+ name: askBook.book.quote.name,
219
+ symbol: askBook.book.quote.symbol,
220
+ decimals: Number(askBook.book.quote.decimals),
221
+ };
222
+ const bidBook = bidBookDayDataList.find((bidBook) => isAddressEqual(getAddress(bidBook.book.quote.id), quoteCurrency.address) &&
223
+ isAddressEqual(getAddress(bidBook.book.base.id), baseCurrency.address));
224
+ const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[baseCurrency.address] ?? 0n), baseCurrency.decimals);
225
+ const isBidNewer = Number(bidBook?.book.lastTakenTimestamp ?? 0) >=
226
+ Number(askBook.book.lastTakenTimestamp);
227
+ return {
228
+ chainId,
229
+ marketId: `${baseCurrency.symbol}/${quoteCurrency.symbol}`,
230
+ base: baseCurrency,
231
+ quote: quoteCurrency,
232
+ price: isBidNewer
233
+ ? Number(bidBook?.book.price)
234
+ : Number(askBook.book.inversePrice),
235
+ priceUSD: isBidNewer
236
+ ? Number(bidBook?.book.base.priceUSD)
237
+ : Number(askBook.book.quote.priceUSD),
238
+ priceChange24h: isBidNewer && bidBook && Number(bidBook.open) > 0
239
+ ? Number(bidBook.close) / Number(bidBook.open) - 1
240
+ : !isBidNewer && Number(askBook.close) > 0
241
+ ? Number(askBook.open) / Number(askBook.close) - 1
242
+ : 0,
243
+ volume24hUSD: bidBook
244
+ ? Number(askBook.volumeUSD) + Number(bidBook.volumeUSD)
245
+ : Number(askBook.volumeUSD),
246
+ totalValueLockedUSD: bidBook
247
+ ? Number(bidBook.book.totalValueLockedUSD) +
248
+ Number(askBook.book.totalValueLockedUSD)
249
+ : Number(askBook.book.totalValueLockedUSD),
250
+ createdAtTimestamp: bidBook
251
+ ? Math.min(Number(askBook.book.createdAtTimestamp), Number(bidBook.book.createdAtTimestamp))
252
+ : Number(askBook.book.createdAtTimestamp),
253
+ fdv: isBidNewer
254
+ ? baseTotalSupply * Number(bidBook?.book.base.priceUSD)
255
+ : baseTotalSupply * Number(askBook.book.quote.priceUSD),
256
+ bidBookUpdatedAt: Number(bidBook?.book.lastTakenTimestamp ?? 0),
257
+ askBookUpdatedAt: Number(askBook.book.lastTakenTimestamp),
258
+ };
259
+ }),
260
+ ]
261
+ .filter(({ priceUSD }) => priceUSD > 0)
262
+ .filter((market, index, self) => self.findIndex((m) => m.marketId === market.marketId) === index);
263
+ };
264
+ //# sourceMappingURL=snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../../src/entities/market/apis/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAgB,MAAM,MAAM,CAAA;AAI/D,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AACtE,OAAO,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AA8B7D,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACtC,YAA0B,EAC1B,OAAkB,EAClB,MAAqB,EACrB,MAAqB,EACrB,kBAA0B,EACD,EAAE;IAC3B,MAAM,iBAAiB,GAAG,+BAA+B,CAAC,kBAAkB,CAAC,CAAA;IAE7E,MAAM,EACJ,IAAI,EAAE,EAAE,YAAY,EAAE,GACvB,GAAG,MAAM,QAAQ,CAAC,GAAG,CAKpB,OAAO,EACP,sBAAsB,EACtB,wZAAwZ,EACxZ;QACE,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAC/D,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;KACjE,CACF,CAAA;IACD,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QAC7B,mCAAmC;QACnC,OAAO,CAAC,IAAI,CACV,mDAAmD,MAAM,IAAI,MAAM,EAAE,CACtE,CAAA;IACH,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,mBAAmB,CAC9C,YAAY,EACZ,OAAO,EACP,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CACvD,CAAA;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAC9D,cAAc,CACZ,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,EACpB,aAAa,CAAC;QACZ,OAAO;QACP,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;KAC7B,CAAC,CACH,CACF,CAAA;IACD,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAC9D,cAAc,CACZ,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EACnB,aAAa,CAAC;QACZ,OAAO;QACP,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;KAC5B,CAAC,CACH,CACF,CAAA;IACD,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;QACvB,MAAM,eAAe,GAAG,qBAAqB,CAC3C,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAC9D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CACnC,CAAA;QACD,MAAM,UAAU,GACd,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;YACvC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;QACzC,OAAO;YACL,OAAO;YACP,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACpE,IAAI,EAAE;gBACJ,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAC5B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAChC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC7C;YACD,KAAK,EAAE;gBACL,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1C,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;gBAC7B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;gBACjC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC9C;YACD,KAAK,EAAE,UAAU;gBACf,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC5B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;YACrC,QAAQ,EAAE,UAAU;gBAClB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACpC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACvC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;YACnE,mBAAmB,EACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC;gBACxC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAC1C,cAAc,EACZ,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;gBACpC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;gBAClD,CAAC,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;oBACxC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;oBAClD,CAAC,CAAC,CAAC;YACT,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EACvC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CACxC;YACD,GAAG,EACD,eAAe;gBACf,CAAC,UAAU;oBACT,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACpC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC1C,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;YACzD,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;SAC1D,CAAA;IACH,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,MAAM,eAAe,GAAG,qBAAqB,CAC3C,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAC9D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CACnC,CAAA;QACD,OAAO;YACL,OAAO;YACP,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACpE,IAAI,EAAE;gBACJ,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAC5B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAChC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC7C;YACD,KAAK,EAAE;gBACL,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1C,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;gBAC7B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;gBACjC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC9C;YACD,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YACtC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjD,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;YAC5C,mBAAmB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAClE,cAAc,EACZ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;gBACtB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;gBAClD,CAAC,CAAC,CAAC;YACP,kBAAkB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAChE,GAAG,EAAE,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC9D,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAC9D,gBAAgB,EAAE,CAAC;SACpB,CAAA;IACH,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,MAAM,eAAe,GAAG,qBAAqB,CAC3C,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAC/D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CACpC,CAAA;QACD,OAAO;YACL,OAAO;YACP,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACpE,IAAI,EAAE;gBACJ,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1C,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;gBAC7B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;gBACjC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC9C;YACD,KAAK,EAAE;gBACL,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAC5B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAChC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC7C;YACD,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YAC7C,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClD,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;YAC5C,mBAAmB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAClE,cAAc,EACZ,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;gBACvB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;gBAClD,CAAC,CAAC,CAAC;YACP,kBAAkB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAChE,GAAG,EAAE,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC/D,gBAAgB,EAAE,CAAC;YACnB,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;SAC/D,CAAA;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;AAC1C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACvC,YAA0B,EAC1B,OAAkB,EAClB,kBAA0B,EACC,EAAE;IAC7B,MAAM,iBAAiB,GAAG,+BAA+B,CAAC,kBAAkB,CAAC,CAAA;IAC7E,MAAM,EACJ,IAAI,EAAE,EAAE,YAAY,EAAE,GACvB,GAAG,MAAM,QAAQ,CAAC,GAAG,CAKpB,OAAO,EACP,uBAAuB,EACvB,kUAAkU,EAClU;QACE,IAAI,EAAE,iBAAiB;KACxB,CACF,CAAA;IACD,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAC3E,cAAc,CACZ,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,EACpB,aAAa,CAAC;QACZ,OAAO;QACP,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;KAC7B,CAAC,CACH,CACF,CAAA;IACD,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAC3E,cAAc,CACZ,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EACnB,aAAa,CAAC;QACZ,OAAO;QACP,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;KAC5B,CAAC,CACH,CACF,CAAA;IACD,MAAM,cAAc,GAAG;QACrB,GAAG,IAAI,GAAG,CACR,YAAY;aACT,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC;YAClC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;SACrB,CAAC;aACD,IAAI,EAAE,CACV;KACF,CAAA;IACD,MAAM,cAAc,GAAG,MAAM,mBAAmB,CAC9C,YAAY,EACZ,OAAO,EACP,cAAc,CACf,CAAA;IAED,OAAO;QACL,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACpC,MAAM,aAAa,GAAG;gBACpB,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1C,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;gBAC7B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;gBACjC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC9C,CAAA;YACD,MAAM,YAAY,GAAG;gBACnB,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAC5B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAChC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC7C,CAAA;YACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CACrC,CAAC,OAAO,EAAE,EAAE,CACV,cAAc,CACZ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EACjC,YAAY,CAAC,OAAO,CACrB;gBACD,cAAc,CACZ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAChC,aAAa,CAAC,OAAO,CACtB,CACJ,CAAA;YACD,MAAM,eAAe,GAAG,qBAAqB,CAC3C,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAClD,YAAY,CAAC,QAAQ,CACtB,CAAA;YACD,MAAM,UAAU,GACd,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;gBACvC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC,CAAA;YAC/C,OAAO;gBACL,OAAO;gBACP,QAAQ,EAAE,GAAG,YAAY,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE;gBAC1D,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,aAAa;gBACpB,KAAK,EAAE,UAAU;oBACf,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC5B,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC;gBACtC,QAAQ,EAAE,UAAU;oBAClB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACpC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;gBACxC,cAAc,EACZ,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;oBACpC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;oBAClD,CAAC,CAAC,CAAC,UAAU,IAAI,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;wBACnD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;wBAClD,CAAC,CAAC,CAAC;gBACT,YAAY,EAAE,OAAO;oBACnB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;oBACvD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC7B,mBAAmB,EAAE,OAAO;oBAC1B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC;wBACxC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC;oBAC1C,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC;gBAC5C,kBAAkB,EAAE,OAAO;oBACzB,CAAC,CAAC,IAAI,CAAC,GAAG,CACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EACvC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CACxC;oBACH,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;gBAC3C,GAAG,EAAE,UAAU;oBACb,CAAC,CAAC,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACtD,CAAC,CAAC,eAAe,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC1D,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;gBACzD,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;aAChE,CAAA;QACH,CAAC,CAAC;QACF,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACpC,MAAM,aAAa,GAAG;gBACpB,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAC5B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAChC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC7C,CAAA;YACD,MAAM,YAAY,GAAG;gBACnB,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1C,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;gBAC7B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;gBACjC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC9C,CAAA;YACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CACrC,CAAC,OAAO,EAAE,EAAE,CACV,cAAc,CACZ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EACjC,aAAa,CAAC,OAAO,CACtB;gBACD,cAAc,CACZ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAChC,YAAY,CAAC,OAAO,CACrB,CACJ,CAAA;YACD,MAAM,eAAe,GAAG,qBAAqB,CAC3C,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAClD,YAAY,CAAC,QAAQ,CACtB,CAAA;YACD,MAAM,UAAU,GACd,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;gBAC7C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;YACzC,OAAO;gBACL,OAAO;gBACP,QAAQ,EAAE,GAAG,YAAY,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE;gBAC1D,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,aAAa;gBACpB,KAAK,EAAE,UAAU;oBACf,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC;oBAC7B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;gBACrC,QAAQ,EAAE,UAAU;oBAClB,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACrC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;gBACvC,cAAc,EACZ,UAAU,IAAI,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC/C,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;oBAClD,CAAC,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;wBACxC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;wBAClD,CAAC,CAAC,CAAC;gBACT,YAAY,EAAE,OAAO;oBACnB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;oBACvD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC7B,mBAAmB,EAAE,OAAO;oBAC1B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC;wBACxC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC;oBAC1C,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC;gBAC5C,kBAAkB,EAAE,OAAO;oBACzB,CAAC,CAAC,IAAI,CAAC,GAAG,CACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EACvC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CACxC;oBACH,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;gBAC3C,GAAG,EAAE,UAAU;oBACb,CAAC,CAAC,eAAe,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACvD,CAAC,CAAC,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;gBACzD,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;gBAC/D,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC;aAC1D,CAAA;QACH,CAAC,CAAC;KACH;SACE,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC;SACtC,MAAM,CACL,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,KAAK,KAAK,CAClE,CAAA;AACL,CAAC,CAAA"}
@@ -1,10 +1,8 @@
1
1
  import { formatUnits, isAddressEqual } from 'viem';
2
- import { getMarketId } from '../utils/market';
3
- import { invertTick, toPrice } from '../utils/tick';
4
- import { formatPrice } from '../utils/prices';
5
- import { MAKER_DEFAULT_POLICY, TAKER_DEFAULT_POLICY } from '../constants/fee';
6
- import { quoteToBase } from '../utils/decimals';
7
- export class Market {
2
+ import { invertTick, toPrice, formatPrice, quoteToBase } from '../../utils';
3
+ import { MAKER_DEFAULT_POLICY, TAKER_DEFAULT_POLICY, } from '../../constants/chain-configs/fee';
4
+ import { getMarketId } from './utils/market-id';
5
+ export class MarketModel {
8
6
  constructor({ chainId, tokens, bidBook, askBook, }) {
9
7
  Object.defineProperty(this, "chainId", {
10
8
  enumerable: true,
@@ -182,4 +180,4 @@ export class Market {
182
180
  this.askBook = askBook;
183
181
  }
184
182
  }
185
- //# sourceMappingURL=market.js.map
183
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/entities/market/model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/entities/market/types.ts"],"names":[],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  import { getAddress, isAddressEqual, zeroAddress } from 'viem';
2
- import { STABLE_COIN_ADDRESSES, WETH_ADDRESSES } from '../constants/currency';
2
+ import { STABLE_COIN_ADDRESSES, REFERENCE_CURRENCY, } from '../../../constants/chain-configs/currency';
3
3
  export const getMarketId = (chainId, tokenAddresses) => {
4
4
  if (tokenAddresses.length !== 2) {
5
5
  throw new Error('Invalid token pair');
@@ -28,9 +28,7 @@ export const getMarketId = (chainId, tokenAddresses) => {
28
28
  };
29
29
  }
30
30
  // include weth
31
- const weth = tokenAddresses.find((address) => {
32
- return WETH_ADDRESSES[chainId].map((addresses) => getAddress(addresses)).some((addresses) => addresses.includes(address));
33
- });
31
+ const weth = tokenAddresses.find((address) => isAddressEqual(address, REFERENCE_CURRENCY[chainId].address));
34
32
  if (weth) {
35
33
  const other = tokenAddresses.find((address) => !isAddressEqual(address, weth));
36
34
  return {
@@ -46,4 +44,4 @@ export const getMarketId = (chainId, tokenAddresses) => {
46
44
  baseTokenAddress: _tokens[1],
47
45
  };
48
46
  };
49
- //# sourceMappingURL=market.js.map
47
+ //# sourceMappingURL=market-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"market-id.js","sourceRoot":"","sources":["../../../../../src/entities/market/utils/market-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAE9D,OAAO,EACL,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,2CAA2C,CAAA;AAGlD,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAAkB,EAClB,cAA+B,EAK/B,EAAE;IACF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvC,CAAC;IACD,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAE5E,sBAAsB;IACtB,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7C,OAAO,qBAAqB,CAAC,OAAO,CAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CACvD,UAAU,CAAC,SAAS,CAAC,CACtB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IACF,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAC/B,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAC7C,CAAA;QACF,OAAO;YACL,QAAQ,EAAE,GAAG,KAAK,IAAI,MAAM,EAAE;YAC9B,iBAAiB,EAAE,MAAM;YACzB,gBAAgB,EAAE,KAAK;SACxB,CAAA;IACH,CAAC;IAED,cAAc;IACd,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1C,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,CACrC,CAAA;IACD,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAC/B,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,CAClD,CAAA;QACF,OAAO;YACL,QAAQ,EAAE,GAAG,KAAK,IAAI,GAAG,EAAE;YAC3B,iBAAiB,EAAE,GAAG;YACtB,gBAAgB,EAAE,KAAK;SACxB,CAAA;IACH,CAAC;IAED,eAAe;IACf,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC3C,cAAc,CAAC,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAC7D,CAAA;IACD,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAC/B,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAC3C,CAAA;QACF,OAAO;YACL,QAAQ,EAAE,GAAG,KAAK,IAAI,IAAI,EAAE;YAC5B,iBAAiB,EAAE,IAAI;YACvB,gBAAgB,EAAE,KAAK;SACxB,CAAA;IACH,CAAC;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACjE,OAAO;QACL,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;QACvC,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAE;QAC9B,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAE;KAC9B,CAAA;AACH,CAAC,CAAA"}
@@ -0,0 +1,196 @@
1
+ import { formatUnits, getAddress, isAddressEqual, zeroAddress, } from 'viem';
2
+ import { getMarketId } from '../../market/utils/market-id';
3
+ import { baseToQuote, quoteToBase, formatPrice, getMarketPrice, invertTick, toPrice, } from '../../../utils';
4
+ import { applyPercent } from '../../../utils/bigint';
5
+ import { MAKER_DEFAULT_POLICY } from '../../../constants/chain-configs/fee';
6
+ import { Subgraph } from '../../../constants/chain-configs/subgraph';
7
+ import { NATIVE_CURRENCY } from '../../../constants/chain-configs/currency';
8
+ import { CONTRACT_ADDRESSES } from '../../../constants/chain-configs/addresses';
9
+ import { BOOK_MANAGER_ABI } from '../../../constants/abis/core/book-manager-abi';
10
+ import { fetchCurrencyMap } from '../../currency/apis';
11
+ import { fromOrderId } from '../utils/order-id';
12
+ const toOpenOrder = (chainId, currencies, openOrder) => {
13
+ const inputCurrency = currencies.find((c) => isAddressEqual(c.address, getAddress(openOrder.book.quote.id)));
14
+ const outputCurrency = currencies.find((c) => isAddressEqual(c.address, getAddress(openOrder.book.base.id)));
15
+ const { quoteTokenAddress } = getMarketId(chainId, [
16
+ inputCurrency.address,
17
+ outputCurrency.address,
18
+ ]);
19
+ const isBid = isAddressEqual(quoteTokenAddress, inputCurrency.address);
20
+ const quote = isBid ? inputCurrency : outputCurrency;
21
+ const base = isBid ? outputCurrency : inputCurrency;
22
+ const tick = BigInt(openOrder.tick);
23
+ const unitAmount = BigInt(openOrder.unitAmount);
24
+ const filledUnitAmount = BigInt(openOrder.filledUnitAmount);
25
+ const unitSize = BigInt(openOrder.book.unitSize);
26
+ const claimedUnitAmount = BigInt(openOrder.claimedUnitAmount);
27
+ const claimableUnitAmount = BigInt(openOrder.claimableUnitAmount);
28
+ // base amount type
29
+ const amount = isBid
30
+ ? quoteToBase(tick, unitSize * unitAmount, false)
31
+ : unitSize * unitAmount;
32
+ const filled = isBid
33
+ ? quoteToBase(tick, unitSize * filledUnitAmount, false)
34
+ : unitSize * filledUnitAmount;
35
+ // each currency amount type
36
+ const invertedTick = invertTick(tick);
37
+ const claimed = isBid
38
+ ? quoteToBase(tick, unitSize * claimedUnitAmount, false)
39
+ : baseToQuote(invertedTick, unitSize * claimedUnitAmount, false);
40
+ const claimable = isBid
41
+ ? quoteToBase(tick, unitSize * claimableUnitAmount, false)
42
+ : baseToQuote(invertedTick, unitSize * claimableUnitAmount, false);
43
+ const cancelable = unitSize * (unitAmount - filledUnitAmount); // same current open amount
44
+ return {
45
+ id: openOrder.id,
46
+ user: getAddress(openOrder.owner),
47
+ isBid,
48
+ inputCurrency,
49
+ outputCurrency,
50
+ txHash: openOrder.transaction.id,
51
+ createdAt: Number(openOrder.timestamp),
52
+ price: formatPrice(toPrice(isBid ? tick : invertTick(tick)), quote.decimals, base.decimals),
53
+ tick: Number(tick),
54
+ orderIndex: openOrder.orderIndex,
55
+ amount: { currency: base, value: formatUnits(amount, base.decimals) },
56
+ filled: { currency: base, value: formatUnits(filled, base.decimals) },
57
+ claimed: {
58
+ currency: outputCurrency,
59
+ value: formatUnits(claimed, outputCurrency.decimals),
60
+ },
61
+ claimable: {
62
+ currency: outputCurrency,
63
+ value: formatUnits(claimable, outputCurrency.decimals),
64
+ },
65
+ cancelable: {
66
+ currency: inputCurrency,
67
+ value: formatUnits(applyPercent(cancelable, 100 +
68
+ (Number(MAKER_DEFAULT_POLICY[chainId].rate) * 100) /
69
+ Number(MAKER_DEFAULT_POLICY[chainId].RATE_PRECISION), 6), inputCurrency.decimals),
70
+ },
71
+ };
72
+ };
73
+ const extractCurrenciesFromOpenOrders = (chainId, openOrders) => {
74
+ const currencies = openOrders
75
+ .map((openOrder) => {
76
+ return [
77
+ {
78
+ address: getAddress(openOrder.book.base.id),
79
+ name: openOrder.book.base.name,
80
+ symbol: openOrder.book.base.symbol,
81
+ decimals: Number(openOrder.book.base.decimals),
82
+ },
83
+ {
84
+ address: getAddress(openOrder.book.quote.id),
85
+ name: openOrder.book.quote.name,
86
+ symbol: openOrder.book.quote.symbol,
87
+ decimals: Number(openOrder.book.quote.decimals),
88
+ },
89
+ ];
90
+ })
91
+ .flat()
92
+ // remove duplicates
93
+ .filter((currency, index, self) => self.findIndex((c) => isAddressEqual(c.address, currency.address)) ===
94
+ index)
95
+ // remove zero address
96
+ .filter((currency) => !isAddressEqual(currency.address, zeroAddress));
97
+ return [...currencies, NATIVE_CURRENCY[chainId]];
98
+ };
99
+ export async function fetchOpenOrdersByUserAddressFromSubgraph(chainId, userAddress) {
100
+ const { data: { openOrders }, } = await Subgraph.get(chainId, 'getOpenOrdersByUserAddress', 'query getOpenOrdersByUserAddress($userAddress: String!) { openOrders(where: {owner: $userAddress}, first: 1000) { id owner book { id base { id name symbol decimals } quote { id name symbol decimals } unitSize } tick transaction { id } timestamp unitAmount filledUnitAmount claimedUnitAmount claimableUnitAmount orderIndex } }', {
101
+ userAddress: userAddress.toLowerCase(),
102
+ });
103
+ const currencies = extractCurrenciesFromOpenOrders(chainId, openOrders);
104
+ return openOrders.map((openOrder) => toOpenOrder(chainId, currencies, openOrder));
105
+ }
106
+ export async function fetchOpenOrderByOrderIdFromSubgraph(chainId, orderId) {
107
+ const { data: { openOrder }, } = await Subgraph.get(chainId, 'getOpenOrder', 'query getOpenOrder($orderId: ID!) { openOrder(id: $orderId) { id owner book { id base { id name symbol decimals } quote { id name symbol decimals } unitSize } tick transaction { id } timestamp unitAmount filledUnitAmount claimedUnitAmount claimableUnitAmount orderIndex } }', {
108
+ orderId,
109
+ });
110
+ if (!openOrder) {
111
+ throw new Error(`Open order not found: ${orderId}`);
112
+ }
113
+ return toOpenOrder(chainId, extractCurrenciesFromOpenOrders(chainId, [openOrder]), openOrder);
114
+ }
115
+ export async function fetchOpenOrdersByOrderIdsFromSubgraph(chainId, orderIds) {
116
+ const { data: { openOrders }, } = await Subgraph.get(chainId, 'getOpenOrders', 'query getOpenOrders($orderIds: [ID!]!) { openOrders(where: {id_in: $orderIds}) { id owner book { id base { id name symbol decimals } quote { id name symbol decimals } unitSize } tick transaction { id } timestamp unitAmount filledUnitAmount claimedUnitAmount claimableUnitAmount orderIndex } }', {
117
+ orderIds,
118
+ });
119
+ const currencies = extractCurrenciesFromOpenOrders(chainId, openOrders);
120
+ return openOrders.map((openOrder) => toOpenOrder(chainId, currencies, openOrder));
121
+ }
122
+ export const fetchOnChainOrders = async (publicClient, chainId, orderIds) => {
123
+ const result = await publicClient.multicall({
124
+ contracts: [
125
+ ...orderIds.map((orderId) => ({
126
+ address: CONTRACT_ADDRESSES[chainId].BookManager,
127
+ abi: BOOK_MANAGER_ABI,
128
+ functionName: 'getOrder',
129
+ args: [orderId],
130
+ })),
131
+ ...orderIds.map((orderId) => ({
132
+ address: CONTRACT_ADDRESSES[chainId].BookManager,
133
+ abi: BOOK_MANAGER_ABI,
134
+ functionName: 'ownerOf',
135
+ args: [orderId],
136
+ })),
137
+ ...orderIds.map((orderId) => ({
138
+ address: CONTRACT_ADDRESSES[chainId].BookManager,
139
+ abi: BOOK_MANAGER_ABI,
140
+ functionName: 'getBookKey',
141
+ args: [fromOrderId(orderId).bookId],
142
+ })),
143
+ ],
144
+ });
145
+ const addresses = orderIds
146
+ .map((_, index) => {
147
+ const { base, quote } = result[index + orderIds.length * 2].result;
148
+ return [base, quote];
149
+ })
150
+ .flat();
151
+ const currencyMap = await fetchCurrencyMap(publicClient, chainId, addresses, false);
152
+ return orderIds.map((orderId, index) => {
153
+ const order = result[index].result;
154
+ const owner = result[index + orderIds.length].result;
155
+ const { base, quote, unitSize } = result[index + orderIds.length * 2]
156
+ .result;
157
+ const cancelable = applyPercent(unitSize * order.open, 100 +
158
+ (Number(MAKER_DEFAULT_POLICY[chainId].rate) * 100) /
159
+ Number(MAKER_DEFAULT_POLICY[chainId].RATE_PRECISION), 6);
160
+ const claimable = quoteToBase(fromOrderId(orderId).tick, unitSize * order.claimable, false);
161
+ const isBid = isAddressEqual(quote, getMarketId(chainId, [base, quote]).quoteTokenAddress);
162
+ const { tick, index: orderIndex } = fromOrderId(orderId);
163
+ const [quoteCurrency, baseCurrency] = isBid
164
+ ? [currencyMap[quote], currencyMap[base]]
165
+ : [currencyMap[base], currencyMap[quote]];
166
+ return {
167
+ id: orderId.toString(),
168
+ user: owner,
169
+ isBid,
170
+ price: isBid
171
+ ? getMarketPrice({
172
+ marketQuoteCurrency: quoteCurrency,
173
+ marketBaseCurrency: baseCurrency,
174
+ bidTick: tick,
175
+ })
176
+ : getMarketPrice({
177
+ marketQuoteCurrency: quoteCurrency,
178
+ marketBaseCurrency: baseCurrency,
179
+ askTick: tick,
180
+ }),
181
+ tick: Number(tick),
182
+ orderIndex: orderIndex.toString(),
183
+ inputCurrency: currencyMap[getAddress(quote)],
184
+ outputCurrency: currencyMap[getAddress(base)],
185
+ cancelable: {
186
+ currency: currencyMap[getAddress(quote)],
187
+ value: formatUnits(cancelable, currencyMap[getAddress(quote)].decimals),
188
+ },
189
+ claimable: {
190
+ currency: currencyMap[getAddress(base)],
191
+ value: formatUnits(claimable, currencyMap[getAddress(base)].decimals),
192
+ },
193
+ };
194
+ });
195
+ };
196
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/open-order/apis/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/entities/open-order/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ export const fromOrderId = (orderId) => {
2
+ const tick = (orderId >> 40n) & (2n ** 24n - 1n);
3
+ return {
4
+ bookId: orderId >> 64n,
5
+ tick: tick & (2n ** 23n) ? -(2n ** 24n - tick) : tick,
6
+ index: orderId & (2n ** 40n - 1n),
7
+ };
8
+ };
9
+ //# sourceMappingURL=order-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-id.js","sourceRoot":"","sources":["../../../../../src/entities/open-order/utils/order-id.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAAe,EAKf,EAAE;IACF,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,GAAG,EAAE,CAAC,CAAA;IAChD,OAAO;QACL,MAAM,EAAE,OAAO,IAAI,GAAG;QACtB,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QACrD,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,IAAI,GAAG,GAAG,EAAE,CAAC;KAClC,CAAA;AACH,CAAC,CAAA"}