sushi 3.1.0 → 3.2.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 (496) hide show
  1. package/dist/_cjs/chain/constants.js +8 -1
  2. package/dist/_cjs/chain/constants.js.map +1 -1
  3. package/dist/_cjs/chain/generated.js +61 -1
  4. package/dist/_cjs/chain/generated.js.map +1 -1
  5. package/dist/_cjs/chain/index.js +15 -1
  6. package/dist/_cjs/chain/index.js.map +1 -1
  7. package/dist/_cjs/config/default-slippage.js +1 -1
  8. package/dist/_cjs/config/features/aggregator.js +10 -0
  9. package/dist/_cjs/config/features/aggregator.js.map +1 -0
  10. package/dist/_cjs/config/{bentobox.js → features/bentobox.js} +1 -1
  11. package/dist/_cjs/config/features/bentobox.js.map +1 -0
  12. package/dist/_cjs/config/{extractor.js → features/extractor.js} +2 -1
  13. package/dist/_cjs/config/features/extractor.js.map +1 -0
  14. package/dist/_cjs/config/{furo.js → features/furo.js} +1 -1
  15. package/dist/_cjs/config/features/furo.js.map +1 -0
  16. package/dist/_cjs/config/features/index.js +36 -0
  17. package/dist/_cjs/config/features/index.js.map +1 -0
  18. package/dist/_cjs/config/{master-chef.js → features/master-chef.js} +1 -1
  19. package/dist/_cjs/config/features/master-chef.js.map +1 -0
  20. package/dist/_cjs/config/features/merkl.js +26 -0
  21. package/dist/_cjs/config/features/merkl.js.map +1 -0
  22. package/dist/_cjs/config/{mini-chef.js → features/mini-chef.js} +1 -1
  23. package/dist/_cjs/config/features/mini-chef.js.map +1 -0
  24. package/dist/_cjs/config/features/pancakeswap-v2.js +32 -0
  25. package/dist/_cjs/config/features/pancakeswap-v2.js.map +1 -0
  26. package/dist/_cjs/config/{pancakeswap-v3.js → features/pancakeswap-v3.js} +1 -1
  27. package/dist/_cjs/config/features/pancakeswap-v3.js.map +1 -0
  28. package/dist/_cjs/config/{route-processor.js → features/route-processor.js} +5 -1
  29. package/dist/_cjs/config/features/route-processor.js.map +1 -0
  30. package/dist/_cjs/config/{squid.js → features/squid.js} +1 -1
  31. package/dist/_cjs/config/features/squid.js.map +1 -0
  32. package/dist/_cjs/config/{stargate.js → features/stargate.js} +2 -2
  33. package/dist/_cjs/config/features/stargate.js.map +1 -0
  34. package/dist/_cjs/config/{sushiswap-v2.js → features/sushiswap-v2.js} +1 -1
  35. package/dist/_cjs/config/features/sushiswap-v2.js.map +1 -0
  36. package/dist/_cjs/config/{sushiswap-v3.js → features/sushiswap-v3.js} +1 -1
  37. package/dist/_cjs/config/features/sushiswap-v3.js.map +1 -0
  38. package/dist/_cjs/config/features/sushiswap.js +14 -0
  39. package/dist/_cjs/config/features/sushiswap.js.map +1 -0
  40. package/dist/_cjs/config/{sushixswap.js → features/sushixswap.js} +1 -1
  41. package/dist/_cjs/config/features/sushixswap.js.map +1 -0
  42. package/dist/_cjs/config/{trident.js → features/trident.js} +1 -1
  43. package/dist/_cjs/config/features/trident.js.map +1 -0
  44. package/dist/_cjs/config/{uniswap-v2.js → features/uniswap-v2.js} +1 -1
  45. package/dist/_cjs/config/features/uniswap-v2.js.map +1 -0
  46. package/dist/_cjs/config/{uniswap-v3.js → features/uniswap-v3.js} +7 -1
  47. package/dist/_cjs/config/features/uniswap-v3.js.map +1 -0
  48. package/dist/_cjs/config/index.js +9 -25
  49. package/dist/_cjs/config/index.js.map +1 -1
  50. package/dist/_cjs/config/native-address.js +5 -0
  51. package/dist/_cjs/config/native-address.js.map +1 -0
  52. package/dist/_cjs/config/subgraph/hosts.js +4 -1
  53. package/dist/_cjs/config/subgraph/hosts.js.map +1 -1
  54. package/dist/_cjs/config/subgraph/subgraphs/data-api.js +6 -0
  55. package/dist/_cjs/config/subgraph/subgraphs/data-api.js.map +1 -0
  56. package/dist/_cjs/config/subgraph/subgraphs/index.js +1 -0
  57. package/dist/_cjs/config/subgraph/subgraphs/index.js.map +1 -1
  58. package/dist/_cjs/config/subgraph/subgraphs/sushiswap-v3.js +1 -1
  59. package/dist/_cjs/config/token-chomper.js +1 -1
  60. package/dist/_cjs/config/{additional-bases.js → token-maps/additional-bases.js} +5 -3
  61. package/dist/_cjs/config/token-maps/additional-bases.js.map +1 -0
  62. package/dist/_cjs/config/{bases-to-check-trades-against.js → token-maps/bases-to-check-trades-against.js} +10 -4
  63. package/dist/_cjs/config/token-maps/bases-to-check-trades-against.js.map +1 -0
  64. package/dist/_cjs/config/{custom-bases.js → token-maps/custom-bases.js} +2 -2
  65. package/dist/_cjs/config/token-maps/custom-bases.js.map +1 -0
  66. package/dist/_cjs/config/{default-bases.js → token-maps/default-bases.js} +10 -3
  67. package/dist/_cjs/config/token-maps/default-bases.js.map +1 -0
  68. package/dist/_cjs/config/{default-quote.js → token-maps/default-quote.js} +3 -3
  69. package/dist/_cjs/config/token-maps/default-quote.js.map +1 -0
  70. package/dist/_cjs/config/token-maps/index.js +25 -0
  71. package/dist/_cjs/config/token-maps/index.js.map +1 -0
  72. package/dist/_cjs/config/{lsds.js → token-maps/lsds.js} +4 -2
  73. package/dist/_cjs/config/token-maps/lsds.js.map +1 -0
  74. package/dist/_cjs/config/{short-name-to-currency.js → token-maps/short-name-to-currency.js} +2 -2
  75. package/dist/_cjs/config/token-maps/short-name-to-currency.js.map +1 -0
  76. package/dist/_cjs/config/{stables.js → token-maps/stables.js} +5 -3
  77. package/dist/_cjs/config/token-maps/stables.js.map +1 -0
  78. package/dist/_cjs/config/viem.js +12 -0
  79. package/dist/_cjs/config/viem.js.map +1 -1
  80. package/dist/_cjs/config/wallet.js +2 -0
  81. package/dist/_cjs/config/wallet.js.map +1 -1
  82. package/dist/_cjs/currency/currency.js +3 -1
  83. package/dist/_cjs/currency/currency.js.map +1 -1
  84. package/dist/_cjs/currency/native.js +1 -1
  85. package/dist/_cjs/currency/native.js.map +1 -1
  86. package/dist/_cjs/currency/token-addresses.js +9 -1
  87. package/dist/_cjs/currency/token-addresses.js.map +1 -1
  88. package/dist/_cjs/currency/token.js +3 -1
  89. package/dist/_cjs/currency/token.js.map +1 -1
  90. package/dist/_cjs/currency/tokens.js +14 -1
  91. package/dist/_cjs/currency/tokens.js.map +1 -1
  92. package/dist/_cjs/data/index.js +18 -0
  93. package/dist/_cjs/data/index.js.map +1 -0
  94. package/dist/_cjs/data/lowercase-map.js +19 -0
  95. package/dist/_cjs/data/lowercase-map.js.map +1 -0
  96. package/dist/_cjs/format/hash.js +13 -0
  97. package/dist/_cjs/format/hash.js.map +1 -0
  98. package/dist/_cjs/format/index.js +1 -0
  99. package/dist/_cjs/format/index.js.map +1 -1
  100. package/dist/_cjs/index.js +1 -0
  101. package/dist/_cjs/index.js.map +1 -1
  102. package/dist/_cjs/pool/sushiswap-v2/sushiswap-v2-pool.js +1 -1
  103. package/dist/_cjs/pool/sushiswap-v2/sushiswap-v2-pool.js.map +1 -1
  104. package/dist/_cjs/router/PoolBinarySerialization.js +56 -10
  105. package/dist/_cjs/router/PoolBinarySerialization.js.map +1 -1
  106. package/dist/_cjs/router/index.js +1 -0
  107. package/dist/_cjs/router/index.js.map +1 -1
  108. package/dist/_cjs/router/liquidity-providers/LiquidityProvider.js +22 -0
  109. package/dist/_cjs/router/liquidity-providers/LiquidityProvider.js.map +1 -1
  110. package/dist/_cjs/router/liquidity-providers/UniswapV2Base.js +6 -13
  111. package/dist/_cjs/router/liquidity-providers/UniswapV2Base.js.map +1 -1
  112. package/dist/_cjs/router/pool-codes/PoolCode.js +14 -1
  113. package/dist/_cjs/router/pool-codes/PoolCode.js.map +1 -1
  114. package/dist/_cjs/router/pool-codes/UniV4Pool.js +40 -0
  115. package/dist/_cjs/router/pool-codes/UniV4Pool.js.map +1 -0
  116. package/dist/_cjs/router/pool-codes/index.js +3 -1
  117. package/dist/_cjs/router/pool-codes/index.js.map +1 -1
  118. package/dist/_cjs/router/router.js +12 -11
  119. package/dist/_cjs/router/router.js.map +1 -1
  120. package/dist/_cjs/router/routingBases.js +56 -0
  121. package/dist/_cjs/router/routingBases.js.map +1 -0
  122. package/dist/_cjs/router/tines-to-route-processor-4.js +2 -1
  123. package/dist/_cjs/router/tines-to-route-processor-4.js.map +1 -1
  124. package/dist/_cjs/router/tines-to-route-processor-6.js +18 -0
  125. package/dist/_cjs/router/tines-to-route-processor-6.js.map +1 -0
  126. package/dist/_cjs/tines/UniV4Pool.js +28 -0
  127. package/dist/_cjs/tines/UniV4Pool.js.map +1 -0
  128. package/dist/_cjs/tines/index.js +1 -0
  129. package/dist/_cjs/tines/index.js.map +1 -1
  130. package/dist/_cjs/token-list/constants.js +7 -1
  131. package/dist/_cjs/token-list/constants.js.map +1 -1
  132. package/dist/_cjs/token-list/wrapped-token-info.js.map +1 -1
  133. package/dist/_cjs/types/sushi-pool/pool-v3.js.map +1 -1
  134. package/dist/_esm/chain/constants.js +6 -2
  135. package/dist/_esm/chain/constants.js.map +1 -1
  136. package/dist/_esm/chain/generated.js +61 -1
  137. package/dist/_esm/chain/generated.js.map +1 -1
  138. package/dist/_esm/chain/index.js +14 -1
  139. package/dist/_esm/chain/index.js.map +1 -1
  140. package/dist/_esm/config/default-slippage.js +1 -1
  141. package/dist/_esm/config/features/aggregator.js +7 -0
  142. package/dist/_esm/config/features/aggregator.js.map +1 -0
  143. package/dist/_esm/config/{bentobox.js → features/bentobox.js} +1 -1
  144. package/dist/_esm/config/features/bentobox.js.map +1 -0
  145. package/dist/_esm/config/{extractor.js → features/extractor.js} +2 -1
  146. package/dist/_esm/config/features/extractor.js.map +1 -0
  147. package/dist/_esm/config/{furo.js → features/furo.js} +1 -1
  148. package/dist/_esm/config/features/furo.js.map +1 -0
  149. package/dist/_esm/config/features/index.js +20 -0
  150. package/dist/_esm/config/features/index.js.map +1 -0
  151. package/dist/_esm/config/{master-chef.js → features/master-chef.js} +1 -1
  152. package/dist/_esm/config/features/master-chef.js.map +1 -0
  153. package/dist/_esm/config/features/merkl.js +23 -0
  154. package/dist/_esm/config/features/merkl.js.map +1 -0
  155. package/dist/_esm/config/{mini-chef.js → features/mini-chef.js} +1 -1
  156. package/dist/_esm/config/features/mini-chef.js.map +1 -0
  157. package/dist/_esm/config/features/pancakeswap-v2.js +32 -0
  158. package/dist/_esm/config/features/pancakeswap-v2.js.map +1 -0
  159. package/dist/_esm/config/{pancakeswap-v3.js → features/pancakeswap-v3.js} +1 -1
  160. package/dist/_esm/config/features/pancakeswap-v3.js.map +1 -0
  161. package/dist/_esm/config/{route-processor.js → features/route-processor.js} +5 -1
  162. package/dist/_esm/config/features/route-processor.js.map +1 -0
  163. package/dist/_esm/config/{squid.js → features/squid.js} +1 -1
  164. package/dist/_esm/config/features/squid.js.map +1 -0
  165. package/dist/_esm/config/{stargate.js → features/stargate.js} +2 -2
  166. package/dist/_esm/config/features/stargate.js.map +1 -0
  167. package/dist/_esm/config/{sushiswap-v2.js → features/sushiswap-v2.js} +1 -1
  168. package/dist/_esm/config/features/sushiswap-v2.js.map +1 -0
  169. package/dist/_esm/config/{sushiswap-v3.js → features/sushiswap-v3.js} +1 -1
  170. package/dist/_esm/config/features/sushiswap-v3.js.map +1 -0
  171. package/dist/_esm/config/features/sushiswap.js +10 -0
  172. package/dist/_esm/config/features/sushiswap.js.map +1 -0
  173. package/dist/_esm/config/{sushixswap.js → features/sushixswap.js} +1 -1
  174. package/dist/_esm/config/features/sushixswap.js.map +1 -0
  175. package/dist/_esm/config/{trident.js → features/trident.js} +1 -1
  176. package/dist/_esm/config/features/trident.js.map +1 -0
  177. package/dist/_esm/config/{uniswap-v2.js → features/uniswap-v2.js} +1 -1
  178. package/dist/_esm/config/features/uniswap-v2.js.map +1 -0
  179. package/dist/_esm/config/{uniswap-v3.js → features/uniswap-v3.js} +7 -1
  180. package/dist/_esm/config/features/uniswap-v3.js.map +1 -0
  181. package/dist/_esm/config/index.js +9 -25
  182. package/dist/_esm/config/index.js.map +1 -1
  183. package/dist/_esm/config/native-address.js +2 -0
  184. package/dist/_esm/config/native-address.js.map +1 -0
  185. package/dist/_esm/config/subgraph/hosts.js +3 -0
  186. package/dist/_esm/config/subgraph/hosts.js.map +1 -1
  187. package/dist/_esm/config/subgraph/subgraphs/data-api.js +3 -0
  188. package/dist/_esm/config/subgraph/subgraphs/data-api.js.map +1 -0
  189. package/dist/_esm/config/subgraph/subgraphs/index.js +1 -0
  190. package/dist/_esm/config/subgraph/subgraphs/index.js.map +1 -1
  191. package/dist/_esm/config/subgraph/subgraphs/sushiswap-v3.js +1 -1
  192. package/dist/_esm/config/token-chomper.js +1 -1
  193. package/dist/_esm/config/{additional-bases.js → token-maps/additional-bases.js} +6 -4
  194. package/dist/_esm/config/token-maps/additional-bases.js.map +1 -0
  195. package/dist/_esm/config/{bases-to-check-trades-against.js → token-maps/bases-to-check-trades-against.js} +10 -4
  196. package/dist/_esm/config/token-maps/bases-to-check-trades-against.js.map +1 -0
  197. package/dist/_esm/config/{custom-bases.js → token-maps/custom-bases.js} +2 -2
  198. package/dist/_esm/config/token-maps/custom-bases.js.map +1 -0
  199. package/dist/_esm/config/{default-bases.js → token-maps/default-bases.js} +10 -4
  200. package/dist/_esm/config/token-maps/default-bases.js.map +1 -0
  201. package/dist/_esm/config/{default-quote.js → token-maps/default-quote.js} +3 -3
  202. package/dist/_esm/config/token-maps/default-quote.js.map +1 -0
  203. package/dist/_esm/config/token-maps/index.js +9 -0
  204. package/dist/_esm/config/token-maps/index.js.map +1 -0
  205. package/dist/_esm/config/{lsds.js → token-maps/lsds.js} +4 -2
  206. package/dist/_esm/config/token-maps/lsds.js.map +1 -0
  207. package/dist/_esm/config/{short-name-to-currency.js → token-maps/short-name-to-currency.js} +2 -2
  208. package/dist/_esm/config/token-maps/short-name-to-currency.js.map +1 -0
  209. package/dist/_esm/config/{stables.js → token-maps/stables.js} +5 -3
  210. package/dist/_esm/config/token-maps/stables.js.map +1 -0
  211. package/dist/_esm/config/viem.js +13 -1
  212. package/dist/_esm/config/viem.js.map +1 -1
  213. package/dist/_esm/config/wallet.js +2 -0
  214. package/dist/_esm/config/wallet.js.map +1 -1
  215. package/dist/_esm/currency/currency.js +5 -1
  216. package/dist/_esm/currency/currency.js.map +1 -1
  217. package/dist/_esm/currency/native.js +1 -1
  218. package/dist/_esm/currency/native.js.map +1 -1
  219. package/dist/_esm/currency/token-addresses.js +8 -2
  220. package/dist/_esm/currency/token-addresses.js.map +1 -1
  221. package/dist/_esm/currency/token.js +3 -1
  222. package/dist/_esm/currency/token.js.map +1 -1
  223. package/dist/_esm/currency/tokens.js +14 -2
  224. package/dist/_esm/currency/tokens.js.map +1 -1
  225. package/dist/_esm/data/index.js +2 -0
  226. package/dist/_esm/data/index.js.map +1 -0
  227. package/dist/_esm/data/lowercase-map.js +15 -0
  228. package/dist/_esm/data/lowercase-map.js.map +1 -0
  229. package/dist/_esm/format/hash.js +10 -0
  230. package/dist/_esm/format/hash.js.map +1 -0
  231. package/dist/_esm/format/index.js +1 -0
  232. package/dist/_esm/format/index.js.map +1 -1
  233. package/dist/_esm/index.js +1 -0
  234. package/dist/_esm/index.js.map +1 -1
  235. package/dist/_esm/pool/sushiswap-v2/sushiswap-v2-pool.js +1 -1
  236. package/dist/_esm/pool/sushiswap-v2/sushiswap-v2-pool.js.map +1 -1
  237. package/dist/_esm/router/PoolBinarySerialization.js +61 -13
  238. package/dist/_esm/router/PoolBinarySerialization.js.map +1 -1
  239. package/dist/_esm/router/index.js +1 -0
  240. package/dist/_esm/router/index.js.map +1 -1
  241. package/dist/_esm/router/liquidity-providers/LiquidityProvider.js +22 -0
  242. package/dist/_esm/router/liquidity-providers/LiquidityProvider.js.map +1 -1
  243. package/dist/_esm/router/liquidity-providers/UniswapV2Base.js +2 -9
  244. package/dist/_esm/router/liquidity-providers/UniswapV2Base.js.map +1 -1
  245. package/dist/_esm/router/pool-codes/PoolCode.js +14 -0
  246. package/dist/_esm/router/pool-codes/PoolCode.js.map +1 -1
  247. package/dist/_esm/router/pool-codes/UniV4Pool.js +37 -0
  248. package/dist/_esm/router/pool-codes/UniV4Pool.js.map +1 -0
  249. package/dist/_esm/router/pool-codes/index.js +1 -0
  250. package/dist/_esm/router/pool-codes/index.js.map +1 -1
  251. package/dist/_esm/router/router.js +13 -11
  252. package/dist/_esm/router/router.js.map +1 -1
  253. package/dist/_esm/router/routingBases.js +50 -0
  254. package/dist/_esm/router/routingBases.js.map +1 -0
  255. package/dist/_esm/router/tines-to-route-processor-4.js +1 -1
  256. package/dist/_esm/router/tines-to-route-processor-4.js.map +1 -1
  257. package/dist/_esm/router/tines-to-route-processor-6.js +14 -0
  258. package/dist/_esm/router/tines-to-route-processor-6.js.map +1 -0
  259. package/dist/_esm/tines/RPool.js +1 -1
  260. package/dist/_esm/tines/RPool.js.map +1 -1
  261. package/dist/_esm/tines/UniV4Pool.js +40 -0
  262. package/dist/_esm/tines/UniV4Pool.js.map +1 -0
  263. package/dist/_esm/tines/index.js +1 -0
  264. package/dist/_esm/tines/index.js.map +1 -1
  265. package/dist/_esm/token-list/constants.js +6 -0
  266. package/dist/_esm/token-list/constants.js.map +1 -1
  267. package/dist/_esm/token-list/wrapped-token-info.js.map +1 -1
  268. package/dist/_esm/types/sushi-pool/pool-v3.js.map +1 -1
  269. package/dist/_types/chain/constants.d.ts +53 -0
  270. package/dist/_types/chain/constants.d.ts.map +1 -1
  271. package/dist/_types/chain/generated.d.ts +50 -1
  272. package/dist/_types/chain/generated.d.ts.map +1 -1
  273. package/dist/_types/chain/index.d.ts +59 -2
  274. package/dist/_types/chain/index.d.ts.map +1 -1
  275. package/dist/_types/config/default-slippage.d.ts +1 -1
  276. package/dist/_types/config/features/aggregator.d.ts +2 -0
  277. package/dist/_types/config/features/aggregator.d.ts.map +1 -0
  278. package/dist/_types/config/{bentobox.d.ts → features/bentobox.d.ts} +1 -1
  279. package/dist/_types/config/features/bentobox.d.ts.map +1 -0
  280. package/dist/_types/config/{extractor.d.ts → features/extractor.d.ts} +2 -2
  281. package/dist/_types/config/features/extractor.d.ts.map +1 -0
  282. package/dist/_types/config/{furo.d.ts → features/furo.d.ts} +1 -1
  283. package/dist/_types/config/features/furo.d.ts.map +1 -0
  284. package/dist/_types/config/features/index.d.ts +20 -0
  285. package/dist/_types/config/features/index.d.ts.map +1 -0
  286. package/dist/_types/config/features/master-chef.d.ts.map +1 -0
  287. package/dist/_types/config/features/merkl.d.ts +6 -0
  288. package/dist/_types/config/features/merkl.d.ts.map +1 -0
  289. package/dist/_types/config/{mini-chef.d.ts → features/mini-chef.d.ts} +1 -1
  290. package/dist/_types/config/features/mini-chef.d.ts.map +1 -0
  291. package/dist/_types/config/features/pancakeswap-v2.d.ts +8 -0
  292. package/dist/_types/config/features/pancakeswap-v2.d.ts.map +1 -0
  293. package/dist/_types/config/{pancakeswap-v3.d.ts → features/pancakeswap-v3.d.ts} +1 -1
  294. package/dist/_types/config/features/pancakeswap-v3.d.ts.map +1 -0
  295. package/dist/_types/config/{route-processor.d.ts → features/route-processor.d.ts} +3 -3
  296. package/dist/_types/config/features/route-processor.d.ts.map +1 -0
  297. package/dist/_types/config/features/squid.d.ts.map +1 -0
  298. package/dist/_types/config/{stargate.d.ts → features/stargate.d.ts} +1 -1
  299. package/dist/_types/config/features/stargate.d.ts.map +1 -0
  300. package/dist/_types/config/{sushiswap-v2.d.ts → features/sushiswap-v2.d.ts} +1 -1
  301. package/dist/_types/config/features/sushiswap-v2.d.ts.map +1 -0
  302. package/dist/_types/config/{sushiswap-v3.d.ts → features/sushiswap-v3.d.ts} +1 -1
  303. package/dist/_types/config/features/sushiswap-v3.d.ts.map +1 -0
  304. package/dist/_types/config/features/sushiswap.d.ts +6 -0
  305. package/dist/_types/config/features/sushiswap.d.ts.map +1 -0
  306. package/dist/_types/config/{sushixswap.d.ts → features/sushixswap.d.ts} +1 -1
  307. package/dist/_types/config/features/sushixswap.d.ts.map +1 -0
  308. package/dist/_types/config/{trident.d.ts → features/trident.d.ts} +1 -1
  309. package/dist/_types/config/features/trident.d.ts.map +1 -0
  310. package/dist/_types/config/features/uniswap-v2.d.ts.map +1 -0
  311. package/dist/_types/config/{uniswap-v3.d.ts → features/uniswap-v3.d.ts} +4 -4
  312. package/dist/_types/config/features/uniswap-v3.d.ts.map +1 -0
  313. package/dist/_types/config/index.d.ts +9 -25
  314. package/dist/_types/config/index.d.ts.map +1 -1
  315. package/dist/_types/config/native-address.d.ts +2 -0
  316. package/dist/_types/config/native-address.d.ts.map +1 -0
  317. package/dist/_types/config/subgraph/hosts.d.ts +1 -0
  318. package/dist/_types/config/subgraph/hosts.d.ts.map +1 -1
  319. package/dist/_types/config/subgraph/subgraphs/bentobox.d.ts +1 -1
  320. package/dist/_types/config/subgraph/subgraphs/bentobox.d.ts.map +1 -1
  321. package/dist/_types/config/subgraph/subgraphs/data-api.d.ts +2 -0
  322. package/dist/_types/config/subgraph/subgraphs/data-api.d.ts.map +1 -0
  323. package/dist/_types/config/subgraph/subgraphs/furo.d.ts +1 -1
  324. package/dist/_types/config/subgraph/subgraphs/furo.d.ts.map +1 -1
  325. package/dist/_types/config/subgraph/subgraphs/index.d.ts +1 -0
  326. package/dist/_types/config/subgraph/subgraphs/index.d.ts.map +1 -1
  327. package/dist/_types/config/subgraph/subgraphs/mini-chef.d.ts +1 -1
  328. package/dist/_types/config/subgraph/subgraphs/mini-chef.d.ts.map +1 -1
  329. package/dist/_types/config/subgraph/subgraphs/sushiswap-v2.d.ts +1 -1
  330. package/dist/_types/config/subgraph/subgraphs/sushiswap-v2.d.ts.map +1 -1
  331. package/dist/_types/config/subgraph/subgraphs/sushiswap-v3.d.ts +1 -1
  332. package/dist/_types/config/subgraph/subgraphs/sushiswap-v3.d.ts.map +1 -1
  333. package/dist/_types/config/{additional-bases.d.ts → token-maps/additional-bases.d.ts} +1 -1
  334. package/dist/_types/config/token-maps/additional-bases.d.ts.map +1 -0
  335. package/dist/_types/config/token-maps/bases-to-check-trades-against.d.ts +5 -0
  336. package/dist/_types/config/token-maps/bases-to-check-trades-against.d.ts.map +1 -0
  337. package/dist/_types/config/{custom-bases.d.ts → token-maps/custom-bases.d.ts} +1 -1
  338. package/dist/_types/config/token-maps/custom-bases.d.ts.map +1 -0
  339. package/dist/_types/config/{default-bases.d.ts → token-maps/default-bases.d.ts} +3 -1
  340. package/dist/_types/config/token-maps/default-bases.d.ts.map +1 -0
  341. package/dist/_types/config/{default-quote.d.ts → token-maps/default-quote.d.ts} +1 -1
  342. package/dist/_types/config/token-maps/default-quote.d.ts.map +1 -0
  343. package/dist/_types/config/token-maps/index.d.ts +9 -0
  344. package/dist/_types/config/token-maps/index.d.ts.map +1 -0
  345. package/dist/_types/config/{lsds.d.ts → token-maps/lsds.d.ts} +3 -1
  346. package/dist/_types/config/token-maps/lsds.d.ts.map +1 -0
  347. package/dist/_types/config/{short-name-to-currency.d.ts → token-maps/short-name-to-currency.d.ts} +2 -2
  348. package/dist/_types/config/token-maps/short-name-to-currency.d.ts.map +1 -0
  349. package/dist/_types/config/{stables.d.ts → token-maps/stables.d.ts} +3 -1
  350. package/dist/_types/config/token-maps/stables.d.ts.map +1 -0
  351. package/dist/_types/config/viem.d.ts +152 -0
  352. package/dist/_types/config/viem.d.ts.map +1 -1
  353. package/dist/_types/config/wallet.d.ts +2 -2
  354. package/dist/_types/config/wallet.d.ts.map +1 -1
  355. package/dist/_types/currency/currency.d.ts +13 -1
  356. package/dist/_types/currency/currency.d.ts.map +1 -1
  357. package/dist/_types/currency/native.d.ts +2 -1
  358. package/dist/_types/currency/native.d.ts.map +1 -1
  359. package/dist/_types/currency/token-addresses.d.ts +8 -0
  360. package/dist/_types/currency/token-addresses.d.ts.map +1 -1
  361. package/dist/_types/currency/token.d.ts +5 -2
  362. package/dist/_types/currency/token.d.ts.map +1 -1
  363. package/dist/_types/currency/tokens.d.ts +5 -0
  364. package/dist/_types/currency/tokens.d.ts.map +1 -1
  365. package/dist/_types/data/index.d.ts +2 -0
  366. package/dist/_types/data/index.d.ts.map +1 -0
  367. package/dist/_types/data/lowercase-map.d.ts +7 -0
  368. package/dist/_types/data/lowercase-map.d.ts.map +1 -0
  369. package/dist/_types/format/hash.d.ts +2 -0
  370. package/dist/_types/format/hash.d.ts.map +1 -0
  371. package/dist/_types/format/index.d.ts +1 -0
  372. package/dist/_types/format/index.d.ts.map +1 -1
  373. package/dist/_types/index.d.ts +1 -0
  374. package/dist/_types/index.d.ts.map +1 -1
  375. package/dist/_types/pool/sushiswap-v3/entities/SushiSwapV3Pool.d.ts +1 -1
  376. package/dist/_types/pool/sushiswap-v3/entities/SushiSwapV3Pool.d.ts.map +1 -1
  377. package/dist/_types/router/PoolBinarySerialization.d.ts.map +1 -1
  378. package/dist/_types/router/index.d.ts +1 -0
  379. package/dist/_types/router/index.d.ts.map +1 -1
  380. package/dist/_types/router/liquidity-providers/LiquidityProvider.d.ts +23 -1
  381. package/dist/_types/router/liquidity-providers/LiquidityProvider.d.ts.map +1 -1
  382. package/dist/_types/router/liquidity-providers/UniswapV2Base.d.ts.map +1 -1
  383. package/dist/_types/router/pool-codes/PoolCode.d.ts +10 -0
  384. package/dist/_types/router/pool-codes/PoolCode.d.ts.map +1 -1
  385. package/dist/_types/router/pool-codes/UniV4Pool.d.ts +13 -0
  386. package/dist/_types/router/pool-codes/UniV4Pool.d.ts.map +1 -0
  387. package/dist/_types/router/pool-codes/index.d.ts +1 -0
  388. package/dist/_types/router/pool-codes/index.d.ts.map +1 -1
  389. package/dist/_types/router/router.d.ts +4 -1
  390. package/dist/_types/router/router.d.ts.map +1 -1
  391. package/dist/_types/router/routingBases.d.ts +8 -0
  392. package/dist/_types/router/routingBases.d.ts.map +1 -0
  393. package/dist/_types/router/tines-to-route-processor-4.d.ts +9 -2
  394. package/dist/_types/router/tines-to-route-processor-4.d.ts.map +1 -1
  395. package/dist/_types/router/tines-to-route-processor-6.d.ts +5 -0
  396. package/dist/_types/router/tines-to-route-processor-6.d.ts.map +1 -0
  397. package/dist/_types/tines/UniV4Pool.d.ts +13 -0
  398. package/dist/_types/tines/UniV4Pool.d.ts.map +1 -0
  399. package/dist/_types/tines/index.d.ts +1 -0
  400. package/dist/_types/tines/index.d.ts.map +1 -1
  401. package/dist/_types/token-list/constants.d.ts +3 -0
  402. package/dist/_types/token-list/constants.d.ts.map +1 -1
  403. package/dist/_types/token-list/wrapped-token-info.d.ts +2 -1
  404. package/dist/_types/token-list/wrapped-token-info.d.ts.map +1 -1
  405. package/dist/_types/types/sushi-pool/pool-v2.d.ts +1 -1
  406. package/dist/_types/types/sushi-pool/pool-v2.d.ts.map +1 -1
  407. package/dist/_types/types/sushi-pool/pool-v3.d.ts +2 -1
  408. package/dist/_types/types/sushi-pool/pool-v3.d.ts.map +1 -1
  409. package/dist/_types/types/sushi-pool/pool-with-aprs.d.ts +0 -6
  410. package/dist/_types/types/sushi-pool/pool-with-aprs.d.ts.map +1 -1
  411. package/package.json +9 -1
  412. package/dist/_cjs/config/additional-bases.js.map +0 -1
  413. package/dist/_cjs/config/angle.js +0 -22
  414. package/dist/_cjs/config/angle.js.map +0 -1
  415. package/dist/_cjs/config/bases-to-check-trades-against.js.map +0 -1
  416. package/dist/_cjs/config/bentobox.js.map +0 -1
  417. package/dist/_cjs/config/custom-bases.js.map +0 -1
  418. package/dist/_cjs/config/default-bases.js.map +0 -1
  419. package/dist/_cjs/config/default-quote.js.map +0 -1
  420. package/dist/_cjs/config/extractor.js.map +0 -1
  421. package/dist/_cjs/config/furo.js.map +0 -1
  422. package/dist/_cjs/config/lsds.js.map +0 -1
  423. package/dist/_cjs/config/master-chef.js.map +0 -1
  424. package/dist/_cjs/config/mini-chef.js.map +0 -1
  425. package/dist/_cjs/config/pancakeswap-v2.js +0 -13
  426. package/dist/_cjs/config/pancakeswap-v2.js.map +0 -1
  427. package/dist/_cjs/config/pancakeswap-v3.js.map +0 -1
  428. package/dist/_cjs/config/route-processor.js.map +0 -1
  429. package/dist/_cjs/config/short-name-to-currency.js.map +0 -1
  430. package/dist/_cjs/config/squid.js.map +0 -1
  431. package/dist/_cjs/config/stables.js.map +0 -1
  432. package/dist/_cjs/config/stargate.js.map +0 -1
  433. package/dist/_cjs/config/sushiswap-v2.js.map +0 -1
  434. package/dist/_cjs/config/sushiswap-v3.js.map +0 -1
  435. package/dist/_cjs/config/sushixswap.js.map +0 -1
  436. package/dist/_cjs/config/trident.js.map +0 -1
  437. package/dist/_cjs/config/uniswap-v2.js.map +0 -1
  438. package/dist/_cjs/config/uniswap-v3.js.map +0 -1
  439. package/dist/_esm/config/additional-bases.js.map +0 -1
  440. package/dist/_esm/config/angle.js +0 -20
  441. package/dist/_esm/config/angle.js.map +0 -1
  442. package/dist/_esm/config/bases-to-check-trades-against.js.map +0 -1
  443. package/dist/_esm/config/bentobox.js.map +0 -1
  444. package/dist/_esm/config/custom-bases.js.map +0 -1
  445. package/dist/_esm/config/default-bases.js.map +0 -1
  446. package/dist/_esm/config/default-quote.js.map +0 -1
  447. package/dist/_esm/config/extractor.js.map +0 -1
  448. package/dist/_esm/config/furo.js.map +0 -1
  449. package/dist/_esm/config/lsds.js.map +0 -1
  450. package/dist/_esm/config/master-chef.js.map +0 -1
  451. package/dist/_esm/config/mini-chef.js.map +0 -1
  452. package/dist/_esm/config/pancakeswap-v2.js +0 -10
  453. package/dist/_esm/config/pancakeswap-v2.js.map +0 -1
  454. package/dist/_esm/config/pancakeswap-v3.js.map +0 -1
  455. package/dist/_esm/config/route-processor.js.map +0 -1
  456. package/dist/_esm/config/short-name-to-currency.js.map +0 -1
  457. package/dist/_esm/config/squid.js.map +0 -1
  458. package/dist/_esm/config/stables.js.map +0 -1
  459. package/dist/_esm/config/stargate.js.map +0 -1
  460. package/dist/_esm/config/sushiswap-v2.js.map +0 -1
  461. package/dist/_esm/config/sushiswap-v3.js.map +0 -1
  462. package/dist/_esm/config/sushixswap.js.map +0 -1
  463. package/dist/_esm/config/trident.js.map +0 -1
  464. package/dist/_esm/config/uniswap-v2.js.map +0 -1
  465. package/dist/_esm/config/uniswap-v3.js.map +0 -1
  466. package/dist/_types/config/additional-bases.d.ts.map +0 -1
  467. package/dist/_types/config/angle.d.ts +0 -4
  468. package/dist/_types/config/angle.d.ts.map +0 -1
  469. package/dist/_types/config/bases-to-check-trades-against.d.ts +0 -5
  470. package/dist/_types/config/bases-to-check-trades-against.d.ts.map +0 -1
  471. package/dist/_types/config/bentobox.d.ts.map +0 -1
  472. package/dist/_types/config/custom-bases.d.ts.map +0 -1
  473. package/dist/_types/config/default-bases.d.ts.map +0 -1
  474. package/dist/_types/config/default-quote.d.ts.map +0 -1
  475. package/dist/_types/config/extractor.d.ts.map +0 -1
  476. package/dist/_types/config/furo.d.ts.map +0 -1
  477. package/dist/_types/config/lsds.d.ts.map +0 -1
  478. package/dist/_types/config/master-chef.d.ts.map +0 -1
  479. package/dist/_types/config/mini-chef.d.ts.map +0 -1
  480. package/dist/_types/config/pancakeswap-v2.d.ts +0 -9
  481. package/dist/_types/config/pancakeswap-v2.d.ts.map +0 -1
  482. package/dist/_types/config/pancakeswap-v3.d.ts.map +0 -1
  483. package/dist/_types/config/route-processor.d.ts.map +0 -1
  484. package/dist/_types/config/short-name-to-currency.d.ts.map +0 -1
  485. package/dist/_types/config/squid.d.ts.map +0 -1
  486. package/dist/_types/config/stables.d.ts.map +0 -1
  487. package/dist/_types/config/stargate.d.ts.map +0 -1
  488. package/dist/_types/config/sushiswap-v2.d.ts.map +0 -1
  489. package/dist/_types/config/sushiswap-v3.d.ts.map +0 -1
  490. package/dist/_types/config/sushixswap.d.ts.map +0 -1
  491. package/dist/_types/config/trident.d.ts.map +0 -1
  492. package/dist/_types/config/uniswap-v2.d.ts.map +0 -1
  493. package/dist/_types/config/uniswap-v3.d.ts.map +0 -1
  494. /package/dist/_types/config/{master-chef.d.ts → features/master-chef.d.ts} +0 -0
  495. /package/dist/_types/config/{squid.d.ts → features/squid.d.ts} +0 -0
  496. /package/dist/_types/config/{uniswap-v2.d.ts → features/uniswap-v2.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"sushiswap-v2-pool.js","sourceRoot":"","sources":["../../../../src/pool/sushiswap-v2/sushiswap-v2-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sushiswap-v2-pool.js","sourceRoot":"","sources":["../../../../src/pool/sushiswap-v2/sushiswap-v2-pool.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,17 @@
1
1
  import { ChainId } from '../chain/index.js';
2
2
  import { Token } from '../currency/index.js';
3
3
  import { BinReadStream, BinWriteStream, } from '../serializer/BinarySerialization.js';
4
- import { BridgeUnlimited, ConstantProductRPool, CurveMultitokenCore, CurveMultitokenPool, UniV3Pool, createCurvePoolsForMultipool, } from '../tines/index.js';
4
+ import { BridgeUnlimited, ConstantProductRPool, CurveMultitokenCore, CurveMultitokenPool, UniV3Pool, UniV4Pool, createCurvePoolsForMultipool, } from '../tines/index.js';
5
5
  import { curvePoolType2Num, curvePoolTypeFromNum } from './curve-sdk.js';
6
6
  import { LiquidityProviders } from './liquidity-providers/index.js';
7
- import { ConstantProductPoolCode, CurvePoolCode, NativeWrapBridgePoolCode, PoolCode, UniV3PoolCode, } from './pool-codes/index.js';
7
+ import { ConstantProductPoolCode, CurvePoolCode, NativeWrapBridgePoolCode, PoolCode, UniV3PoolCode, UniV4PoolCode, } from './pool-codes/index.js';
8
8
  var PoolTypeIndex;
9
9
  (function (PoolTypeIndex) {
10
10
  PoolTypeIndex[PoolTypeIndex["Bridge"] = 0] = "Bridge";
11
11
  PoolTypeIndex[PoolTypeIndex["Classic"] = 1] = "Classic";
12
12
  PoolTypeIndex[PoolTypeIndex["Concentrated"] = 2] = "Concentrated";
13
13
  PoolTypeIndex[PoolTypeIndex["Curve"] = 3] = "Curve";
14
+ PoolTypeIndex[PoolTypeIndex["V4"] = 4] = "V4";
14
15
  PoolTypeIndex[PoolTypeIndex["CurvePoolCoreHaveBeenSerialized"] = 255] = "CurvePoolCoreHaveBeenSerialized";
15
16
  })(PoolTypeIndex || (PoolTypeIndex = {}));
16
17
  const FEE_FRACTIONS = 10_000_000;
@@ -37,14 +38,14 @@ export function serializePoolsBinary(pools, extraData) {
37
38
  const tokenIndex = new Map(Array.from(tokenMap.entries()).map((a, i) => [a[0], i]));
38
39
  stream.uint24(pools.length);
39
40
  pools.forEach((pc) => {
40
- stream.str16(pc.liquidityProvider);
41
+ stream.str16(pc.liquidityProvider); // TODO: small set of strings actually, can be optimized
41
42
  if (pc instanceof ConstantProductPoolCode) {
42
43
  const p = pc.pool;
43
44
  stream.uint8(PoolTypeIndex.Classic);
44
45
  stream.address(p.address);
45
46
  stream.uint24(tokenIndex.get(p.token0.address));
46
47
  stream.uint24(tokenIndex.get(p.token1.address));
47
- stream.uint24(p.fee * FEE_FRACTIONS); // can be optimized - usually 0.003
48
+ stream.uint24(Math.round(p.fee * FEE_FRACTIONS)); // can be optimized - usually 0.003
48
49
  stream.bigUInt(p.reserve0, p.address, 'res0');
49
50
  stream.bigUInt(p.reserve1, p.address, 'res1');
50
51
  }
@@ -54,7 +55,7 @@ export function serializePoolsBinary(pools, extraData) {
54
55
  stream.address(p.address);
55
56
  stream.uint24(tokenIndex.get(p.token0.address));
56
57
  stream.uint24(tokenIndex.get(p.token1.address));
57
- stream.uint24(p.fee * FEE_FRACTIONS); // can be optimized - usually [0.003, 0.001, 0.0005]
58
+ stream.uint24(Math.round(p.fee * FEE_FRACTIONS)); // can be optimized - usually [0.003, 0.001, 0.0005]
58
59
  stream.bigUInt(p.reserve0, p.address, 'res0');
59
60
  stream.bigUInt(p.reserve1, p.address, 'res1');
60
61
  //stream.uint32(p.tick) nearestTick instead of it
@@ -74,7 +75,7 @@ export function serializePoolsBinary(pools, extraData) {
74
75
  stream.address(p.address);
75
76
  stream.uint24(tokenIndex.get(p.token0.address));
76
77
  stream.uint24(tokenIndex.get(p.token1.address));
77
- stream.uint24(p.fee * FEE_FRACTIONS); // can be optimized - usually 0.003
78
+ stream.uint24(Math.round(p.fee * FEE_FRACTIONS)); // can be optimized - usually 0.003
78
79
  }
79
80
  else if (pc instanceof CurvePoolCode) {
80
81
  const p = pc.pool;
@@ -94,9 +95,29 @@ export function serializePoolsBinary(pools, extraData) {
94
95
  stream.bigUInt(core.reserves[i], core.address);
95
96
  stream.float64(originalRates[i]);
96
97
  });
97
- stream.uint24(p.fee * FEE_FRACTIONS); // can be optimized - usually [0.003, 0.001, 0.0005]
98
+ stream.uint24(Math.round(p.fee * FEE_FRACTIONS)); // can be optimized - usually [0.003, 0.001, 0.0005]
98
99
  stream.float64(core.A);
99
100
  }
101
+ else if (pc instanceof UniV4PoolCode) {
102
+ const p = pc.pool;
103
+ stream.uint8(PoolTypeIndex.V4);
104
+ stream.address(p.address);
105
+ stream.str16(p.id);
106
+ stream.uint24(tokenIndex.get(p.token0.address));
107
+ stream.uint24(tokenIndex.get(p.token1.address));
108
+ stream.uint24(Math.round(p.fee * FEE_FRACTIONS));
109
+ stream.address(p.hooks);
110
+ //stream.uint32(p.tick) nearestTick instead of it
111
+ stream.uint24(p.nearestTick);
112
+ stream.bigUInt(p.liquidity, p.address, 'liquidity');
113
+ stream.bigUInt(p.sqrtPriceX96, p.address, 'price');
114
+ stream.uint24(p.ticks.length);
115
+ p.ticks.forEach((t) => {
116
+ stream.int24(t.index);
117
+ stream.bigInt(t.DLiquidity);
118
+ });
119
+ stream.uint24(pc.tickSpacing);
120
+ }
100
121
  else {
101
122
  console.error(`Serialization: unsupported pool type ${pc.pool.address}`);
102
123
  }
@@ -136,27 +157,34 @@ export function deserializePoolsBinary(data, start = 0, existedTokens) {
136
157
  }
137
158
  }
138
159
  const poolsNum = stream.uint24();
139
- const pools = new Array(poolsNum);
140
- for (let i = 0; i < poolsNum;) {
160
+ const pools = [];
161
+ for (let i = 0; i < poolsNum; ++i) {
141
162
  const liquidityProvider = stream.str16();
142
163
  const poolType = stream.uint8();
143
164
  switch (poolType) {
144
165
  case PoolTypeIndex.Classic:
145
- pools[i++] = new ConstantProductPoolCode(readCPRPool(stream, tokensArray), liquidityProvider, liquidityProvider);
166
+ pools.push(new ConstantProductPoolCode(readCPRPool(stream, tokensArray), liquidityProvider, liquidityProvider));
146
167
  break;
147
168
  case PoolTypeIndex.Concentrated:
148
- pools[i++] = new UniV3PoolCode(readUniV3Pool(stream, tokensArray), liquidityProvider, liquidityProvider);
169
+ pools.push(new UniV3PoolCode(readUniV3Pool(stream, tokensArray), liquidityProvider, liquidityProvider));
149
170
  break;
150
171
  case PoolTypeIndex.Bridge:
151
- pools[i++] = new NativeWrapBridgePoolCode(readNativeWrapRPool(stream, tokensArray), liquidityProvider);
172
+ pools.push(new NativeWrapBridgePoolCode(readNativeWrapRPool(stream, tokensArray), liquidityProvider));
152
173
  break;
153
174
  case PoolTypeIndex.Curve: {
154
175
  const curvePoolType = curvePoolTypeFromNum(stream.uint8());
155
176
  readCurveRPools(stream, tokensArray).forEach((p) => {
156
- pools[i++] = new CurvePoolCode(p, liquidityProvider, liquidityProvider, curvePoolType);
177
+ pools.push(new CurvePoolCode(p, liquidityProvider, liquidityProvider, curvePoolType));
157
178
  });
158
179
  break;
159
180
  }
181
+ case PoolTypeIndex.V4:
182
+ {
183
+ const pool = readUniV4Pool(stream, tokensArray);
184
+ const tickSpacing = stream.uint24();
185
+ pools.push(new UniV4PoolCode(pool, tickSpacing, liquidityProvider, liquidityProvider));
186
+ }
187
+ break;
160
188
  case PoolTypeIndex.CurvePoolCoreHaveBeenSerialized: // pools of one core are serialized only once
161
189
  break;
162
190
  default:
@@ -194,6 +222,26 @@ function readUniV3Pool(stream, tokensArray) {
194
222
  return new UniV3Pool(address, token0, token1, fee, reserve0, reserve1, 0, // tick is not needed if we already have nearestTick
195
223
  liquidity, sqrtPriceX96, ticks, nearestTick);
196
224
  }
225
+ function readUniV4Pool(stream, tokensArray) {
226
+ const address = stream.address();
227
+ const id = stream.str16();
228
+ const token0 = tokensArray[stream.uint24()];
229
+ const token1 = tokensArray[stream.uint24()];
230
+ const fee = stream.uint24() / FEE_FRACTIONS;
231
+ const hooks = stream.address();
232
+ const nearestTick = stream.uint24();
233
+ const liquidity = stream.bigUInt();
234
+ const sqrtPriceX96 = stream.bigUInt();
235
+ const ticksLen = stream.uint24();
236
+ const ticks = new Array(ticksLen);
237
+ for (let i = 0; i < ticksLen; ++i) {
238
+ const index = stream.int24();
239
+ const DLiquidity = stream.bigInt();
240
+ ticks[i] = { index, DLiquidity };
241
+ }
242
+ return new UniV4Pool(id, address, token0, token1, fee, hooks, 0, // tick is not needed if we already have nearestTick
243
+ liquidity, sqrtPriceX96, ticks, nearestTick);
244
+ }
197
245
  function readNativeWrapRPool(stream, tokensArray) {
198
246
  const address = stream.address();
199
247
  const token0 = tokensArray[stream.uint24()];
@@ -1 +1 @@
1
- {"version":3,"file":"PoolBinarySerialization.js","sourceRoot":"","sources":["../../../src/router/PoolBinarySerialization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PoolBinarySerialization.js","sourceRoot":"","sources":["../../../src/router/PoolBinarySerialization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC5C,OAAO,EACL,aAAa,EACb,cAAc,GACf,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EAEnB,SAAS,EACT,SAAS,EACT,4BAA4B,GAC7B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,EACL,uBAAuB,EACvB,aAAa,EACb,wBAAwB,EACxB,QAAQ,EACR,aAAa,EACb,aAAa,GACd,MAAM,uBAAuB,CAAA;AAE9B,IAAK,aAOJ;AAPD,WAAK,aAAa;IAChB,qDAAU,CAAA;IACV,uDAAW,CAAA;IACX,iEAAgB,CAAA;IAChB,mDAAS,CAAA;IACT,6CAAM,CAAA;IACN,yGAAqC,CAAA;AACvC,CAAC,EAPI,aAAa,KAAb,aAAa,QAOjB;AAED,MAAM,aAAa,GAAG,UAAU,CAAA;AAEhC,sCAAsC;AACtC,MAAM,UAAU,oBAAoB,CAClC,KAAiB,EACjB,SAAe;IAEf,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAA;IACnC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAA;IAC7C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;IAC1D,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAA;IAE7C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC1C,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE;QAC5B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;QACxC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IACF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QACzB,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa,EAAE,CAAA;QAClC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACpB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;QACtB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QACxB,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC,CAAC,CAAA;IACF,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CACxD,CAAA;IAED,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC3B,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QACnB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAA,CAAC,wDAAwD;QAC3F,IAAI,EAAE,YAAY,uBAAuB,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,EAAE,CAAC,IAA4B,CAAA;YACzC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACnC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YACzB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAW,CAAC,CAAA;YACzD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAW,CAAC,CAAA;YACzD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC,CAAA,CAAC,mCAAmC;YACpF,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAC/C,CAAC;aAAM,IAAI,EAAE,YAAY,aAAa,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAiB,CAAA;YAC9B,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAA;YACxC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YACzB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAW,CAAC,CAAA;YACzD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAW,CAAC,CAAA;YACzD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC,CAAA,CAAC,oDAAoD;YACrG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAC7C,iDAAiD;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;YAC5B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;YACnD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAC7B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;gBACrB,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;YAC7B,CAAC,CAAC,CAAA;QACJ,CAAC;aAAM,IAAI,EAAE,YAAY,wBAAwB,EAAE,CAAC;YAClD,MAAM,CAAC,GAAG,EAAE,CAAC,IAAuB,CAAA;YACpC,8BAA8B;YAC9B,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;YAClC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YACzB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAW,CAAC,CAAA;YACzD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAW,CAAC,CAAA;YACzD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC,CAAA,CAAC,mCAAmC;QACtF,CAAC;aAAM,IAAI,EAAE,YAAY,aAAa,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,EAAE,CAAC,IAA2B,CAAA;YACxC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAA;YACnB,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1C,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,+BAA+B,CAAC,CAAA;gBAC3D,OAAM;YACR,CAAC;YACD,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAErC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YACjC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;YAC5C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC5B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAChC,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;YAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC3B,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAW,CAAC,CAAA;gBAClD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;gBACxD,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAW,CAAC,CAAA;YAC5C,CAAC,CAAC,CAAA;YACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC,CAAA,CAAC,oDAAoD;YACrG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACxB,CAAC;aAAM,IAAI,EAAE,YAAY,aAAa,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAiB,CAAA;YAC9B,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;YAC9B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YACzB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAClB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAW,CAAC,CAAA;YACzD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAW,CAAC,CAAA;YACzD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC,CAAA;YAChD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;YACvB,iDAAiD;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;YAC5B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;YACnD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAC7B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;gBACrB,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;YAC7B,CAAC,CAAC,CAAA;YACF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;QAC1E,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAC,iBAAiB,EAAE,CAAA;AACnC,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,sBAAsB,CACpC,IAAgB,EAChB,KAAK,GAAG,CAAC,EACT,aAAgD;IAQhD,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAA;IACtC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAClB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;IAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAa,CAAA;IAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;IACjC,MAAM,WAAW,GAAa,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;IAClD,gCAAgC;IAChC,8BAA8B;IAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;QAChC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;QAC3C,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC,OAAO,CAAC,CAAA;QACtC,IAAI,KAAK,EAAE,CAAC;YACV,WAAW,CAAC,CAAC,CAAC,GAAG,KAAe,CAAA;YAChC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;QAClC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;YAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;YAC/B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;gBACtB,OAAO;gBACP,OAAO;gBACP,IAAI;gBACJ,MAAM;gBACN,QAAQ;aACT,CAAC,CAAA;YACF,WAAW,CAAC,CAAC,CAAC,GAAG,KAAe,CAAA;QAClC,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;IAChC,MAAM,KAAK,GAAe,EAAE,CAAA;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;QAClC,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;QACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAmB,CAAA;QAChD,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,aAAa,CAAC,OAAO;gBACxB,KAAK,CAAC,IAAI,CACR,IAAI,uBAAuB,CACzB,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,EAChC,iBAAuC,EACvC,iBAAiB,CAClB,CACF,CAAA;gBACD,MAAK;YACP,KAAK,aAAa,CAAC,YAAY;gBAC7B,KAAK,CAAC,IAAI,CACR,IAAI,aAAa,CACf,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,EAClC,iBAAuC,EACvC,iBAAiB,CAClB,CACF,CAAA;gBACD,MAAK;YACP,KAAK,aAAa,CAAC,MAAM;gBACvB,KAAK,CAAC,IAAI,CACR,IAAI,wBAAwB,CAC1B,mBAAmB,CAAC,MAAM,EAAE,WAAW,CAAC,EACxC,iBAAuC,CACxC,CACF,CAAA;gBACD,MAAK;YACP,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;gBACzB,MAAM,aAAa,GAAG,oBAAoB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;gBAC1D,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBACjD,KAAK,CAAC,IAAI,CACR,IAAI,aAAa,CACf,CAAC,EACD,iBAAuC,EACvC,iBAAiB,EACjB,aAAa,CACd,CACF,CAAA;gBACH,CAAC,CAAC,CAAA;gBACF,MAAK;YACP,CAAC;YACD,KAAK,aAAa,CAAC,EAAE;gBACnB,CAAC;oBACC,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;oBAC/C,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;oBACnC,KAAK,CAAC,IAAI,CACR,IAAI,aAAa,CACf,IAAI,EACJ,WAAW,EACX,iBAAuC,EACvC,iBAAiB,CAClB,CACF,CAAA;gBACH,CAAC;gBACD,MAAK;YACP,KAAK,aAAa,CAAC,+BAA+B,EAAE,6CAA6C;gBAC/F,MAAK;YACP;gBACE,OAAO,CAAC,KAAK,CAAC,sCAAsC,QAAQ,EAAE,CAAC,CAAA;QACnE,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAA;AACtD,CAAC;AAED,SAAS,WAAW,CAClB,MAAqB,EACrB,WAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAChC,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAA;IACrD,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAA;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,aAAa,CAAA;IAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IACjC,OAAO,IAAI,oBAAoB,CAC7B,OAAO,EACP,MAAM,EACN,MAAM,EACN,GAAG,EACH,QAAQ,EACR,QAAQ,CACT,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CACpB,MAAqB,EACrB,WAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAChC,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAA;IACrD,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAA;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,aAAa,CAAA;IAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IACjC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAClC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;IAChC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAA;IACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;QAC5B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;QAClC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,CAAA;IAClC,CAAC;IACD,OAAO,IAAI,SAAS,CAClB,OAAO,EACP,MAAM,EACN,MAAM,EACN,GAAG,EACH,QAAQ,EACR,QAAQ,EACR,CAAC,EAAE,oDAAoD;IACvD,SAAS,EACT,YAAY,EACZ,KAAK,EACL,WAAW,CACZ,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CACpB,MAAqB,EACrB,WAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAChC,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;IACzB,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAA;IACrD,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAA;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,aAAa,CAAA;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAClC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;IAChC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAA;IACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;QAC5B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;QAClC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,CAAA;IAClC,CAAC;IACD,OAAO,IAAI,SAAS,CAClB,EAAE,EACF,OAAO,EACP,MAAM,EACN,MAAM,EACN,GAAG,EACH,KAAK,EACL,CAAC,EAAE,oDAAoD;IACvD,SAAS,EACT,YAAY,EACZ,KAAK,EACL,WAAW,CACZ,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAqB,EACrB,WAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAChC,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAA;IACrD,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAA;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,aAAa,CAAA;IAC3C,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;AAC1D,CAAC;AAED,SAAS,eAAe,CACtB,MAAqB,EACrB,WAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAChC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;IAChC,MAAM,MAAM,GAAa,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;IAC7C,MAAM,QAAQ,GAAa,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;IAC/C,MAAM,KAAK,GAAa,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC;QACnC,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAA;QAClD,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;QAC9B,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAC7B,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,aAAa,CAAA;IAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAC1B,OAAO,4BAA4B,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,MAAkB,EAClB,MAAkB;IAElB,IAAI,GAAG,GAAG,IAAI,CAAA;IACd,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;IAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;IAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IAE1D,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QAC5C,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC5C,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YACtD,GAAG,GAAG,KAAK,CAAA;QACb,CAAC;;YAAM,GAAG,GAAG,YAAY,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,GAAG,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QAC5C,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC5C,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YACtD,GAAG,GAAG,KAAK,CAAA;QACb,CAAC;IACH,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,YAAY,CAAC,MAAgB,EAAE,MAAgB;IACtD,IAAI,GAAG,GAAG,MAAM,CACd,MAAM,EACN,MAAM,EACN,CAAC,mBAAmB,EAAE,UAAU,CAAC,EACjC,QAAQ,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAC1C,CAAA;IACD,IAAI,MAAM,YAAY,uBAAuB,EAAE,CAAC;QAC9C,IAAI,CAAC,CAAC,MAAM,YAAY,uBAAuB,CAAC,EAAE,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;YACnE,GAAG,GAAG,KAAK,CAAA;QACb,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,oBAAoB,CAAC,EAAE,CAAC;gBACnD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;gBACrE,GAAG,GAAG,KAAK,CAAA;YACb,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,oBAAoB,CAAC,EAAE,CAAC;oBACnD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;oBACrE,GAAG,GAAG,KAAK,CAAA;gBACb,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;wBACxD,GAAG,GAAG,KAAK,CAAA;gBACf,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;QAC3C,IAAI,CAAC,CAAC,MAAM,YAAY,aAAa,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;YACnE,GAAG,GAAG,KAAK,CAAA;QACb,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,SAAS,CAAC,EAAE,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;gBACrE,GAAG,GAAG,KAAK,CAAA;YACb,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,SAAS,CAAC,EAAE,CAAC;oBACxC,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;oBACrE,GAAG,GAAG,KAAK,CAAA;gBACb,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;wBAAE,GAAG,GAAG,KAAK,CAAA;gBAC9D,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,YAAY,wBAAwB,EAAE,CAAC;QACtD,IAAI,CAAC,CAAC,MAAM,YAAY,wBAAwB,CAAC,EAAE,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;YACnE,GAAG,GAAG,KAAK,CAAA;QACb,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,eAAe,CAAC,EAAE,CAAC;gBAC9C,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;gBACrE,GAAG,GAAG,KAAK,CAAA;YACb,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,eAAe,CAAC,EAAE,CAAC;oBAC9C,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;oBACrE,GAAG,GAAG,KAAK,CAAA;gBACb,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;wBAAE,GAAG,GAAG,KAAK,CAAA;gBACpE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;QAC3C,IAAI,CAAC,CAAC,MAAM,YAAY,aAAa,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;YACnE,GAAG,GAAG,KAAK,CAAA;QACb,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,mBAAmB,CAAC,EAAE,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;gBACrE,GAAG,GAAG,KAAK,CAAA;YACb,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,mBAAmB,CAAC,EAAE,CAAC;oBAClD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;oBACrE,GAAG,GAAG,KAAK,CAAA;gBACb,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;wBAAE,GAAG,GAAG,KAAK,CAAA;gBACxE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;IAClC,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,2BAA2B,CAClC,KAA2B,EAC3B,KAA2B;IAE3B,IAAI,GAAG,GAAG,MAAM,CACd,KAAK,EACL,KAAK,EACL,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,EAC1C,wBAAwB,KAAK,CAAC,OAAO,WAAW,CACjD,CAAA;IACD,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAA;IACxE,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAA;IACxE,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAgB,EAAE,KAAgB;IAC1D,IAAI,GAAG,GAAG,MAAM,CACd,KAAK,EACL,KAAK,EACL;QACE,SAAS;QACT,KAAK;QACL,UAAU;QACV,UAAU;QACV,aAAa;QACb,WAAW;QACX,cAAc;KACf,EACD,aAAa,KAAK,CAAC,OAAO,WAAW,CACtC,CAAA;IACD,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAA;IACxE,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAA;IACxE,GAAG;QACD,SAAS,CACP,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,KAAK,EACX,CAAC,OAAO,EAAE,YAAY,CAAC,EACvB,aAAa,KAAK,CAAC,OAAO,iBAAiB,CAC5C,IAAI,GAAG,CAAA;IACV,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAsB,EACtB,KAAsB;IAEtB,IAAI,GAAG,GAAG,MAAM,CACd,KAAK,EACL,KAAK,EACL,CAAC,SAAS,EAAE,KAAK,CAAC,EAClB,mBAAmB,KAAK,CAAC,OAAO,WAAW,CAC5C,CAAA;IACD,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAA;IACxE,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAA;IACxE,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,0BAA0B,CACjC,KAA0B,EAC1B,KAA0B;IAE1B,IAAI,GAAG,GAAG,MAAM,CACd,KAAK,EACL,KAAK,EACL,CAAC,QAAQ,EAAE,QAAQ,CAAC,EACpB,uBAAuB,KAAK,CAAC,OAAO,WAAW,CAChD,CAAA;IACD,GAAG,GAAG,0BAA0B,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAA;IAC/D,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,0BAA0B,CACjC,KAA0B,EAC1B,KAA0B;IAE1B,IAAI,GAAG,GAAG,MAAM,CACd,KAAK,EACL,KAAK,EACL,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,EACvB,uBAAuB,KAAK,CAAC,OAAO,WAAW,CAChD,CAAA;IACD,GAAG;QACD,SAAS,CACP,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,MAAM,EACZ,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,EACzC,uBAAuB,KAAK,CAAC,OAAO,kBAAkB,CACvD,IAAI,GAAG,CAAA;IACV,GAAG;QACD,SAAS,CACP,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,QAAQ,EACd,uBAAuB,KAAK,CAAC,OAAO,oBAAoB,CACzD,IAAI,GAAG,CAAA;IACV,GAAG;QACD,SAAS,CACP,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,KAAK,EACX,uBAAuB,KAAK,CAAC,OAAO,iBAAiB,CACtD,IAAI,GAAG,CAAA;IACV,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,aAAa,CACpB,MAAc,EACd,MAAc,EACd,MAAc;IAEd,OAAO,MAAM,CACX,MAAM,EACN,MAAM,EACN,CAAC,SAAS,EAAE,UAAU,CAAC,EACvB,QAAQ,MAAM,kBAAkB,CACjC,CAAA;AACH,CAAC;AAED,SAAS,MAAM,CAAI,IAAO,EAAE,IAAO,EAAE,GAAW;IAC9C,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,IAAI,OAAO,IAAI,EAAE,CAAC,CAAA;QAC7C,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,MAAM,CACb,CAAsB,EACtB,CAAsB,EACtB,MAAgB,EAChB,GAAW;IAEX,IAAI,GAAG,GAAG,IAAI,CAAA;IACd,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACnB,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAA;IAChD,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,SAAS,CAAI,CAAM,EAAE,CAAM,EAAE,GAAW;IAC/C,IAAI,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,GAAG,SAAS,CAAC,CAAA;IACrD,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACjB,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAM,EAAE,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAA;IAClD,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,SAAS,CAChB,CAAM,EACN,CAAM,EACN,MAAgB,EAChB,GAAW;IAEX,IAAI,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,GAAG,SAAS,CAAC,CAAA;IACrD,IAAI,CAAC,GAAG;QAAE,OAAO,GAAG,CAAA;IACpB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACjB,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAM,EAAE,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAA;IAC1D,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,MAAkB,EAClB,aAAgD;IAEhD,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;IAC5B,MAAM,IAAI,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IACzC,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;IAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,sBAAsB,CAAC,IAAI,EAAE,CAAC,EAAE,aAAa,CAAC,CAAA;IACxE,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;IAC5B,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;IAC5E,OAAO,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC1C,CAAC"}
@@ -9,4 +9,5 @@ export * from './tines-to-route-processor-4.js';
9
9
  export * from './PoolBinarySerialization.js';
10
10
  export * from './Sankey.AnyChart.js';
11
11
  export * from './curve-sdk.js';
12
+ export * from './routingBases.js';
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/router/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAA;AAC9C,cAAc,uBAAuB,CAAA;AACrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,iCAAiC,CAAA;AAC/C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/router/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAA;AAC9C,cAAc,uBAAuB,CAAA;AACrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,iCAAiC,CAAA;AAC/C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA"}
@@ -24,10 +24,13 @@ export var LiquidityProviders;
24
24
  LiquidityProviders["Wagmi"] = "Wagmi";
25
25
  LiquidityProviders["LaserSwap"] = "LaserSwap";
26
26
  LiquidityProviders["BaseSwap"] = "BaseSwap";
27
+ LiquidityProviders["BaseSwapV3"] = "BaseSwapV3";
27
28
  LiquidityProviders["AlgebraIntegral"] = "AlgebraIntegral";
29
+ LiquidityProviders["AerodromeSlipstream"] = "AerodromeSlipstream";
28
30
  LiquidityProviders["Solarbeam"] = "Solarbeam";
29
31
  LiquidityProviders["Swapsicle"] = "Swapsicle";
30
32
  LiquidityProviders["VVSStandard"] = "VVSStandard";
33
+ LiquidityProviders["VVSFlawless"] = "VVSFlawless";
31
34
  LiquidityProviders["Fraxswap"] = "Fraxswap";
32
35
  LiquidityProviders["SwapBlast"] = "SwapBlast";
33
36
  LiquidityProviders["BlastDEX"] = "BlastDEX";
@@ -37,7 +40,26 @@ export var LiquidityProviders;
37
40
  LiquidityProviders["ThrusterV3"] = "ThrusterV3";
38
41
  LiquidityProviders["DyorV2"] = "DyorV2";
39
42
  LiquidityProviders["HyperBlast"] = "HyperBlast";
43
+ LiquidityProviders["KinetixV2"] = "KinetixV2";
40
44
  LiquidityProviders["KinetixV3"] = "KinetixV3";
45
+ LiquidityProviders["AlienBaseV2"] = "AlienBaseV2";
46
+ LiquidityProviders["AlienBaseV3"] = "AlienBaseV3";
47
+ LiquidityProviders["KimV4"] = "KimV4";
48
+ LiquidityProviders["RingExchangeV2"] = "RingExchangeV2";
49
+ LiquidityProviders["RingExchangeV3"] = "RingExchangeV3";
50
+ LiquidityProviders["GlyphV4"] = "GlyphV4";
51
+ LiquidityProviders["BladeSwap"] = "BladeSwap";
52
+ LiquidityProviders["Fenix"] = "Fenix";
53
+ LiquidityProviders["SilverSwap"] = "SilverSwap";
54
+ LiquidityProviders["Horizon"] = "Horizon";
55
+ LiquidityProviders["Scribe"] = "Scribe";
56
+ LiquidityProviders["COREx"] = "COREx";
57
+ LiquidityProviders["Pangolin"] = "Pangolin";
58
+ LiquidityProviders["ZebraV2"] = "ZebraV2";
59
+ LiquidityProviders["Wigoswap"] = "Wigoswap";
60
+ LiquidityProviders["Agni"] = "Agni";
61
+ LiquidityProviders["FusionXV2"] = "FusionXV2";
62
+ LiquidityProviders["FusionXV3"] = "FusionXV3";
41
63
  })(LiquidityProviders || (LiquidityProviders = {}));
42
64
  export class LiquidityProvider {
43
65
  constructor(chainId, client, isTest = false) {
@@ -1 +1 @@
1
- {"version":3,"file":"LiquidityProvider.js","sourceRoot":"","sources":["../../../../src/router/liquidity-providers/LiquidityProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAI9D,MAAM,CAAN,IAAY,kBAsCX;AAtCD,WAAY,kBAAkB;IAC5B,iDAA2B,CAAA;IAC3B,iDAA2B,CAAA;IAC3B,6CAAuB,CAAA;IACvB,6CAAuB,CAAA;IACvB,6CAAuB,CAAA;IACvB,yCAAmB,CAAA;IACnB,iDAA2B,CAAA;IAC3B,qDAA+B,CAAA;IAC/B,6CAAuB,CAAA;IACvB,mCAAa,CAAA;IACb,iCAAW,CAAA;IACX,yCAAmB,CAAA;IACnB,+CAAyB,CAAA;IACzB,yCAAmB,CAAA;IACnB,+CAAyB,CAAA;IACzB,6CAAuB,CAAA;IACvB,yCAAmB,CAAA;IACnB,uCAAiB,CAAA;IACjB,6CAAuB,CAAA;IACvB,2CAAqB,CAAA;IACrB,qCAAe,CAAA;IACf,6CAAuB,CAAA;IACvB,2CAAqB,CAAA;IACrB,yDAAmC,CAAA;IACnC,6CAAuB,CAAA;IACvB,6CAAuB,CAAA;IACvB,iDAA2B,CAAA;IAC3B,2CAAqB,CAAA;IACrB,6CAAuB,CAAA;IACvB,2CAAqB,CAAA;IACrB,+CAAyB,CAAA;IACzB,+CAAyB,CAAA;IACzB,+CAAyB,CAAA;IACzB,+CAAyB,CAAA;IACzB,uCAAiB,CAAA;IACjB,+CAAyB,CAAA;IACzB,6CAAuB,CAAA;AACzB,CAAC,EAtCW,kBAAkB,KAAlB,kBAAkB,QAsC7B;AAED,MAAM,OAAgB,iBAAiB;IAMrC,YAAY,OAAgB,EAAE,MAAoB,EAAE,MAAM,GAAG,KAAK;QAHlE,oBAAe,GAAG,CAAC,CAAA;QACnB,WAAM,GAAG,KAAK,CAAA;QA6Dd,eAAU,GAAG,CAAC,EAAS,EAAE,EAAS,EAAE,EAAE,CACpC,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;aACjD,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAClD,IAAI,CAAC,GAAG,CAAC,CAAA;QA7DZ,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAmCD;;;OAGG;IACH,kBAAkB;QAChB,OAAO,IAAI,CAAC,eAAe,CAAA;IAC7B,CAAC;IAED;;;;;OAKG;IACH,YAAY;QACV,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,IACpD,IAAI,CAAC,eACP,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAA;IACtB,CAAC;CAMF"}
1
+ {"version":3,"file":"LiquidityProvider.js","sourceRoot":"","sources":["../../../../src/router/liquidity-providers/LiquidityProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAI9D,MAAM,CAAN,IAAY,kBA4DX;AA5DD,WAAY,kBAAkB;IAC5B,iDAA2B,CAAA;IAC3B,iDAA2B,CAAA;IAC3B,6CAAuB,CAAA;IACvB,6CAAuB,CAAA;IACvB,6CAAuB,CAAA;IACvB,yCAAmB,CAAA;IACnB,iDAA2B,CAAA;IAC3B,qDAA+B,CAAA;IAC/B,6CAAuB,CAAA;IACvB,mCAAa,CAAA;IACb,iCAAW,CAAA;IACX,yCAAmB,CAAA;IACnB,+CAAyB,CAAA;IACzB,yCAAmB,CAAA;IACnB,+CAAyB,CAAA;IACzB,6CAAuB,CAAA;IACvB,yCAAmB,CAAA;IACnB,uCAAiB,CAAA;IACjB,6CAAuB,CAAA;IACvB,2CAAqB,CAAA;IACrB,qCAAe,CAAA;IACf,6CAAuB,CAAA;IACvB,2CAAqB,CAAA;IACrB,+CAAyB,CAAA;IACzB,yDAAmC,CAAA;IACnC,iEAA2C,CAAA;IAC3C,6CAAuB,CAAA;IACvB,6CAAuB,CAAA;IACvB,iDAA2B,CAAA;IAC3B,iDAA2B,CAAA;IAC3B,2CAAqB,CAAA;IACrB,6CAAuB,CAAA;IACvB,2CAAqB,CAAA;IACrB,+CAAyB,CAAA;IACzB,+CAAyB,CAAA;IACzB,+CAAyB,CAAA;IACzB,+CAAyB,CAAA;IACzB,uCAAiB,CAAA;IACjB,+CAAyB,CAAA;IACzB,6CAAuB,CAAA;IACvB,6CAAuB,CAAA;IACvB,iDAA2B,CAAA;IAC3B,iDAA2B,CAAA;IAC3B,qCAAe,CAAA;IACf,uDAAiC,CAAA;IACjC,uDAAiC,CAAA;IACjC,yCAAmB,CAAA;IACnB,6CAAuB,CAAA;IACvB,qCAAe,CAAA;IACf,+CAAyB,CAAA;IACzB,yCAAmB,CAAA;IACnB,uCAAiB,CAAA;IACjB,qCAAe,CAAA;IACf,2CAAqB,CAAA;IACrB,yCAAmB,CAAA;IACnB,2CAAqB,CAAA;IACrB,mCAAa,CAAA;IACb,6CAAuB,CAAA;IACvB,6CAAuB,CAAA;AACzB,CAAC,EA5DW,kBAAkB,KAAlB,kBAAkB,QA4D7B;AAED,MAAM,OAAgB,iBAAiB;IAMrC,YAAY,OAAgB,EAAE,MAAoB,EAAE,MAAM,GAAG,KAAK;QAHlE,oBAAe,GAAG,CAAC,CAAA;QACnB,WAAM,GAAG,KAAK,CAAA;QA6Dd,eAAU,GAAG,CAAC,EAAS,EAAE,EAAS,EAAE,EAAE,CACpC,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;aACjD,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAClD,IAAI,CAAC,GAAG,CAAC,CAAA;QA7DZ,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAmCD;;;OAGG;IACH,kBAAkB;QAChB,OAAO,IAAI,CAAC,eAAe,CAAA;IAC7B,CAAC;IAED;;;;;OAKG;IACH,YAAY;QACV,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,IACpD,IAAI,CAAC,eACP,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAA;IACtB,CAAC;CAMF"}
@@ -1,11 +1,11 @@
1
1
  import { encodePacked, getCreate2Address, keccak256 } from 'viem/utils';
2
2
  import { getReservesAbi } from '../../abi/index.js';
3
3
  import { ChainId } from '../../chain/index.js';
4
- import { ADDITIONAL_BASES, BASES_TO_CHECK_TRADES_AGAINST, } from '../../config/index.js';
5
4
  import { Token } from '../../currency/index.js';
6
5
  import { ConstantProductRPool } from '../../tines/index.js';
7
6
  import { getCurrencyCombinations } from '../get-currency-combinations.js';
8
7
  import { ConstantProductPoolCode } from '../pool-codes/index.js';
8
+ import { baseAgainstTokensForPair } from '../routingBases.js';
9
9
  import { LiquidityProvider } from './LiquidityProvider.js';
10
10
  export class UniswapV2BaseProvider extends LiquidityProvider {
11
11
  constructor(chainId, web3Client, factory, initCodeHash, isTest = false) {
@@ -28,14 +28,7 @@ export class UniswapV2BaseProvider extends LiquidityProvider {
28
28
  });
29
29
  }
30
30
  _getProspectiveTokens(t0, t1) {
31
- const set = new Set([
32
- t0,
33
- t1,
34
- ...(BASES_TO_CHECK_TRADES_AGAINST?.[this.chainId] ?? []),
35
- ...(ADDITIONAL_BASES?.[this.chainId]?.[t0.address] ?? []),
36
- ...(ADDITIONAL_BASES?.[this.chainId]?.[t1.address] ?? []),
37
- ]);
38
- return Array.from(set);
31
+ return [...baseAgainstTokensForPair(t0, t1, false), t0, t1];
39
32
  }
40
33
  getStaticPools(t1, t2) {
41
34
  const currencyCombination = getCurrencyCombinations(this.chainId, t1, t2).map(([c0, c1]) => (c0.sortsBefore(c1) ? [c0, c1] : [c1, c0]));
@@ -1 +1 @@
1
- {"version":3,"file":"UniswapV2Base.js","sourceRoot":"","sources":["../../../../src/router/liquidity-providers/UniswapV2Base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UniswapV2Base.js","sourceRoot":"","sources":["../../../../src/router/liquidity-providers/UniswapV2Base.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAe,MAAM,sBAAsB,CAAA;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAA;AACzE,OAAO,EAAE,uBAAuB,EAAiB,MAAM,wBAAwB,CAAA;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAS1D,MAAM,OAAgB,qBAAsB,SAAQ,iBAAiB;IAUnE,YACE,OAAgB,EAChB,UAAwB,EACxB,OAAgC,EAChC,YAAiC,EACjC,MAAM,GAAG,KAAK;QAEd,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;QAhBpC,UAAK,GAA2B,IAAI,GAAG,EAAE,CAAA;QAKzC,QAAG,GAAG,KAAK,CAAA;QACX,YAAO,GAA4B,EAAE,CAAA;QACrC,iBAAY,GAAwB,EAAE,CAAA;QAUpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,OAAO,EAAE,uCAAuC,OAAO,8BAA8B,CAC9F,CAAA;QACH,CAAC;IACH,CAAC;IAED,eAAe,CAAC,EAAS,EAAE,EAAS;QAClC,OAAO,iBAAiB,CAAC;YACvB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAoC,CAAE;YAC9D,IAAI,EAAE,SAAS,CACb,YAAY,CACV,CAAC,SAAS,EAAE,SAAS,CAAC,EACtB,CAAC,EAAE,CAAC,OAAkB,EAAE,EAAE,CAAC,OAAkB,CAAC,CAC/C,CACF;YACD,YAAY,EACV,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAyC,CAAE;SACrE,CAAC,CAAA;IACJ,CAAC;IAED,qBAAqB,CAAC,EAAS,EAAE,EAAS;QACxC,OAAO,CAAC,GAAG,wBAAwB,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;IAC7D,CAAC;IAED,cAAc,CAAC,EAAS,EAAE,EAAS;QACjC,MAAM,mBAAmB,GAAG,uBAAuB,CACjD,IAAI,CAAC,OAAO,EACZ,EAAE,EACF,EAAE,CACH,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;QAC/D,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC/C,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAE,EAAE,WAAW,CAAC,CAAC,CAAE,CAAC;YAC/D,MAAM,EAAE,WAAW,CAAC,CAAC,CAAE;YACvB,MAAM,EAAE,WAAW,CAAC,CAAC,CAAE;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC,CAAA;IACL,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACrD,aAAa,EAAE,CAAC,WAAW,EAAE,EAAE;gBAC7B,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;YAC5C,CAAC;YACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,OAAO,CAAC,KAAK,CACX,GAAG,IAAI,CAAC,YAAY,EAAE,mCACpB,KAAK,CAAC,OACR,EAAE,CACH,CAAA;YACH,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,EAAS,EACT,EAAS,EACT,YAA0B;QAE1B,IAAI,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QACvC,IAAI,YAAY;YACd,KAAK,GAAI,KAAsB,CAAC,MAAM,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CACpC,CAAA;QACH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAM;QACR,CAAC;QAED,MAAM,iBAAiB,GAAe,EAAE,CAAA;QACxC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACrB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACjD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAgB,CAAA;gBACpC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAgB,CAAA;gBAEpC,MAAM,KAAK,GAAG,IAAI,oBAAoB,CACpC,IAAI,CAAC,OAAO,EACZ,MAAM,EACN,MAAM,EACN,IAAI,CAAC,GAAG,EACR,EAAE,EACF,EAAE,CACH,CAAA;gBACD,MAAM,EAAE,GAAG,IAAI,uBAAuB,CACpC,KAAK,EACL,IAAI,CAAC,OAAO,EAAE,EACd,IAAI,CAAC,mBAAmB,EAAE,CAC3B,CAAA;gBACD,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC5B,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM;aAC/B,SAAS,CAAC;YACT,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU;gBACxD,EAAE,OAAkB;YACtB,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAC9B,CAAC,QAAQ,EAAE,EAAE,CACX,CAAC;gBACC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAkB;gBACzC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,GAAG,EAAE,cAAc;gBACnB,YAAY,EAAE,aAAa;aAC5B,CAAU,CACd;SACF,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,OAAO,CAAC,IAAI,CACV,GAAG,IAAI,CAAC,YAAY,EAAE,yDACpB,CAAC,CAAC,OACJ,EAAE,CACH,CAAA;YACD,OAAO,SAAS,CAAA;QAClB,CAAC,CAAC,CAAA;QAEJ,iBAAiB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE;YACxC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;YAC1B,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;YAEvC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC7C,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YACxC,CAAC;iBAAM,CAAC;gBACN,sBAAsB;gBACtB,gHAAgH;YAClH,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,kBAAkB;QAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,kBAAkB;QAChB,IAAI,IAAI,CAAC,kBAAkB;YAAE,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACtD,IAAI,CAAC,aAAa,GAAG,SAAS,CAAA;IAChC,CAAC;CACF"}
@@ -1,4 +1,15 @@
1
1
  import { LiquidityProviders } from '../liquidity-providers/index.js';
2
+ // TODO: optimize RP6 if-else
3
+ export var RPPoolType;
4
+ (function (RPPoolType) {
5
+ RPPoolType[RPPoolType["UniV2"] = 0] = "UniV2";
6
+ RPPoolType[RPPoolType["UniV3"] = 1] = "UniV3";
7
+ RPPoolType[RPPoolType["WrapNative"] = 2] = "WrapNative";
8
+ RPPoolType[RPPoolType["BentoBridge"] = 3] = "BentoBridge";
9
+ RPPoolType[RPPoolType["Trident"] = 4] = "Trident";
10
+ RPPoolType[RPPoolType["Curve"] = 5] = "Curve";
11
+ RPPoolType[RPPoolType["UniV4"] = 6] = "UniV4";
12
+ })(RPPoolType || (RPPoolType = {}));
2
13
  // RPool extention for RP coding
3
14
  export class PoolCode {
4
15
  constructor(pool, liquidityProvider, poolName) {
@@ -17,6 +28,9 @@ export class PoolCode {
17
28
  getSwapCodeForRouteProcessor4(leg, route, to) {
18
29
  return this.getSwapCodeForRouteProcessor2(leg, route, to);
19
30
  }
31
+ getSwapCodeForRouteProcessor6(leg, route, to) {
32
+ return this.getSwapCodeForRouteProcessor4(leg, route, to);
33
+ }
20
34
  }
21
35
  PoolCode.RouteProcessorAddress = 'RouteProcessor';
22
36
  //# sourceMappingURL=PoolCode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PoolCode.js","sourceRoot":"","sources":["../../../../src/router/pool-codes/PoolCode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AAEpE,gCAAgC;AAChC,MAAM,OAAgB,QAAQ;IAK5B,YACE,IAAW,EACX,iBAAqC,EACrC,QAAgB;QAEhB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;QAC1C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAID,uEAAuE;IACvE,0DAA0D;IAC1D,aAAa,CAAC,IAAc,EAAE,MAAkB;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAA;IAC1B,CAAC;IASD,6BAA6B,CAC3B,IAAc,EACd,MAAkB,EAClB,GAAW;QAEX,OAAO,eAAe,CAAA;IACxB,CAAC;IAED,6BAA6B,CAC3B,GAAa,EACb,KAAiB,EACjB,EAAU;QAEV,OAAO,IAAI,CAAC,6BAA6B,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;IAC3D,CAAC;;AA7BM,8BAAqB,GAAG,gBAAgB,CAAA"}
1
+ {"version":3,"file":"PoolCode.js","sourceRoot":"","sources":["../../../../src/router/pool-codes/PoolCode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AAEpE,6BAA6B;AAC7B,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,6CAAS,CAAA;IACT,6CAAS,CAAA;IACT,uDAAc,CAAA;IACd,yDAAe,CAAA;IACf,iDAAW,CAAA;IACX,6CAAS,CAAA;IACT,6CAAS,CAAA;AACX,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,gCAAgC;AAChC,MAAM,OAAgB,QAAQ;IAK5B,YACE,IAAW,EACX,iBAAqC,EACrC,QAAgB;QAEhB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;QAC1C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAID,uEAAuE;IACvE,0DAA0D;IAC1D,aAAa,CAAC,IAAc,EAAE,MAAkB;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAA;IAC1B,CAAC;IASD,6BAA6B,CAC3B,IAAc,EACd,MAAkB,EAClB,GAAW;QAEX,OAAO,eAAe,CAAA;IACxB,CAAC;IAED,6BAA6B,CAC3B,GAAa,EACb,KAAiB,EACjB,EAAU;QAEV,OAAO,IAAI,CAAC,6BAA6B,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;IAC3D,CAAC;IAED,6BAA6B,CAC3B,GAAa,EACb,KAAiB,EACjB,EAAU;QAEV,OAAO,IAAI,CAAC,6BAA6B,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;IAC3D,CAAC;;AArCM,8BAAqB,GAAG,gBAAgB,CAAA"}
@@ -0,0 +1,37 @@
1
+ import { HEXer } from '../HEXer.js';
2
+ import { LiquidityProviders } from '../liquidity-providers/index.js';
3
+ import { PoolCode, RPPoolType } from './PoolCode.js';
4
+ export class UniV4PoolCode extends PoolCode {
5
+ constructor(pool, tickSpacing, liquidityProvider, providerName) {
6
+ super(pool, liquidityProvider, `${providerName} ${(pool?.fee || 0) * 100}%`);
7
+ this.tickSpacing = tickSpacing;
8
+ }
9
+ getStartPoint() {
10
+ return PoolCode.RouteProcessorAddress;
11
+ }
12
+ getSwapCodeForRouteProcessor() {
13
+ return 'unsupported';
14
+ }
15
+ getSwapCodeForRouteProcessor2() {
16
+ return 'unsupported';
17
+ }
18
+ getSwapCodeForRouteProcessor4() {
19
+ return 'unsupported';
20
+ }
21
+ getSwapCodeForRouteProcessor6(leg, _route, to) {
22
+ const pool = this.pool;
23
+ const code = new HEXer()
24
+ .uint8(RPPoolType.UniV4)
25
+ .address(pool.address) // PoolManager
26
+ .address(leg.tokenTo.address)
27
+ .uint24(Math.round(pool.fee * 1_000_000)) // no dynamicFee support rn
28
+ .uint24(this.tickSpacing)
29
+ .address(pool.hooks)
30
+ .bool(leg.tokenFrom.address === this.pool.token0.address)
31
+ .bytes('') // this is a hook data. Is not supported rn
32
+ .address(to)
33
+ .toString();
34
+ return code;
35
+ }
36
+ }
37
+ //# sourceMappingURL=UniV4Pool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UniV4Pool.js","sourceRoot":"","sources":["../../../../src/router/pool-codes/UniV4Pool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAEpD,MAAM,OAAO,aAAc,SAAQ,QAAQ;IAEzC,YACE,IAAe,EACf,WAAmB,EACnB,iBAAqC,EACrC,YAAoB;QAEpB,KAAK,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,YAAY,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;QAC5E,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAChC,CAAC;IAEQ,aAAa;QACpB,OAAO,QAAQ,CAAC,qBAAqB,CAAA;IACvC,CAAC;IAEQ,4BAA4B;QACnC,OAAO,aAAa,CAAA;IACtB,CAAC;IACQ,6BAA6B;QACpC,OAAO,aAAa,CAAA;IACtB,CAAC;IACQ,6BAA6B;QACpC,OAAO,aAAa,CAAA;IACtB,CAAC;IAEQ,6BAA6B,CACpC,GAAa,EACb,MAAkB,EAClB,EAAU;QAEV,MAAM,IAAI,GAAG,IAAI,CAAC,IAAiB,CAAA;QACnC,MAAM,IAAI,GAAG,IAAI,KAAK,EAAE;aACrB,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;aACvB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,cAAc;aACpC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;aAC5B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,2BAA2B;aACpE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;aACxB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;aACnB,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;aACxD,KAAK,CAAC,EAAE,CAAC,CAAC,2CAA2C;aACrD,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,EAAE,CAAA;QACb,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
@@ -6,4 +6,5 @@ export { ConstantProductPoolCode } from './ConstantProductPool.js';
6
6
  export { CurvePoolCode } from './CurvePool.js';
7
7
  export { NativeWrapBridgePoolCode } from './NativeWrapBridge.js';
8
8
  export { UniV3PoolCode } from './UniV3Pool.js';
9
+ export { UniV4PoolCode } from './UniV4Pool.js';
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/router/pool-codes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/router/pool-codes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA"}
@@ -5,17 +5,17 @@ import { routeProcessor4Abi } from '../abi/routeProcessor4Abi.js';
5
5
  import { routeProcessor5Abi } from '../abi/routeProcessor5Abi.js';
6
6
  import { routeProcessorAbi } from '../abi/routeProcessorAbi.js';
7
7
  import { ChainId } from '../chain/index.js';
8
- import { ADDITIONAL_BASES } from '../config/additional-bases.js';
9
- import { BASES_TO_CHECK_TRADES_AGAINST } from '../config/bases-to-check-trades-against.js';
10
- import { LSDS } from '../config/lsds.js';
11
- import { STABLES } from '../config/stables.js';
8
+ import { LSDS } from '../config/token-maps/lsds.js';
9
+ import { STABLES } from '../config/token-maps/stables.js';
12
10
  import { Native, WNATIVE, WNATIVE_ADDRESS } from '../currency/index.js';
13
11
  import { Token } from '../currency/index.js';
14
12
  import { NoWayMultiRoute, RPool, RouteStatus, convertTokenToBento, findMultiRouteExactIn, getBentoChainId, getBigInt, } from '../tines/index.js';
15
13
  import { LiquidityProviders } from './liquidity-providers/index.js';
16
14
  import { PoolCode } from './pool-codes/index.js';
15
+ import { baseAgainstAllTokens } from './routingBases.js';
17
16
  import { RouterLiquiditySource, getRouteProcessor2Code, } from './tines-to-route-processor-2.js';
18
17
  import { getRouteProcessor4Code } from './tines-to-route-processor-4.js';
18
+ import { getRouteProcessor6Code } from './tines-to-route-processor-6.js';
19
19
  import { getRouteProcessorCode } from './tines-to-route-processor.js';
20
20
  export var TransferValue;
21
21
  (function (TransferValue) {
@@ -139,9 +139,7 @@ export class Router {
139
139
  let pools = Array.from(poolCodesList).map((pc) => pc.pool);
140
140
  if (poolFilter)
141
141
  pools = pools.filter(poolFilter);
142
- const baseTrusted = BASES_TO_CHECK_TRADES_AGAINST[chainId] ?? [];
143
- const additionalTrusted = Object.values(ADDITIONAL_BASES[chainId] ?? []).flat();
144
- const route = findMultiRouteExactIn(TokenToRToken(fromToken), TokenToRToken(toToken), amountIn, pools, networks, gasPrice, undefined, baseTrusted.concat(additionalTrusted));
142
+ const route = findMultiRouteExactIn(TokenToRToken(fromToken), TokenToRToken(toToken), amountIn, pools, networks, gasPrice, undefined, baseAgainstAllTokens(chainId, true));
145
143
  return {
146
144
  ...route,
147
145
  legs: route.legs.map((l) => ({
@@ -242,7 +240,7 @@ export class Router {
242
240
  };
243
241
  }
244
242
  // the same as routeProcessor4Params, but with processFunction
245
- static routeProcessor5Params(poolCodesMap, route, fromToken, toToken, to, RPAddr, permits = [], maxSlippage = 0.005, source = RouterLiquiditySource.Sender, processFunction = ProcessFunction.ProcessRoute, transferValueTo, amountValueTransfer) {
243
+ static routeProcessor5Params(poolCodesMap, route, fromToken, toToken, to, RPAddr, permits = [], maxSlippage = 0.005, source = RouterLiquiditySource.Sender, processFunction = ProcessFunction.ProcessRoute, transferValueTo, amountValueTransfer, rpCodeCompiler = getRouteProcessor4Code) {
246
244
  const tokenIn = fromToken instanceof Token
247
245
  ? fromToken.address
248
246
  : '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE';
@@ -257,7 +255,7 @@ export class Router {
257
255
  let routeCode;
258
256
  let data;
259
257
  if (processFunction === ProcessFunction.ProcessRoute) {
260
- routeCode = getRouteProcessor4Code(route, RPAddr, to, poolCodesMap, permits, source);
258
+ routeCode = rpCodeCompiler(route, RPAddr, to, poolCodesMap, permits, source);
261
259
  data = encodeFunctionData({
262
260
  ...RP5processRouteEncodeData[processFunction],
263
261
  args: [
@@ -271,10 +269,10 @@ export class Router {
271
269
  });
272
270
  }
273
271
  else {
274
- if (!transferValueTo || !amountValueTransfer) {
272
+ if (transferValueTo === undefined || amountValueTransfer === undefined) {
275
273
  throw new Error('Missing transferValueTo or feeAmount');
276
274
  }
277
- routeCode = getRouteProcessor4Code(route, RPAddr, processFunction === ProcessFunction.ProcessRouteWithTransferValueInput
275
+ routeCode = rpCodeCompiler(route, RPAddr, processFunction === ProcessFunction.ProcessRouteWithTransferValueInput
278
276
  ? to
279
277
  : RPAddr, poolCodesMap, permits, source);
280
278
  data = encodeFunctionData({
@@ -302,6 +300,10 @@ export class Router {
302
300
  value: fromToken instanceof Token ? undefined : route.amountInBI,
303
301
  };
304
302
  }
303
+ // the same as routeProcessor5Params, but rpCodeCompiler = getRouteProcessor6Code
304
+ static routeProcessor6Params(poolCodesMap, route, fromToken, toToken, to, RPAddr, permits = [], maxSlippage = 0.005, source = RouterLiquiditySource.Sender, processFunction = ProcessFunction.ProcessRoute, transferValueTo, amountValueTransfer, rpCodeCompiler = getRouteProcessor6Code) {
305
+ return _a.routeProcessor5Params(poolCodesMap, route, fromToken, toToken, to, RPAddr, permits, maxSlippage, source, processFunction, transferValueTo, amountValueTransfer, rpCodeCompiler);
306
+ }
305
307
  // Human-readable route printing
306
308
  static routeToHumanString(poolCodesMap, route, fromToken, toToken, shiftPrimary = '', shiftSub = ' ') {
307
309
  let res = '';