@paraswap/dex-lib 2.49.1 → 2.49.2-hashflow

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 (166) hide show
  1. package/build/abi/Redstone.json +739 -0
  2. package/build/abi/angle/stagToken.json +963 -0
  3. package/build/abi/angle-transmuter/MorphoOracle.json +193 -0
  4. package/build/abi/angle-transmuter/MorphoVault.json +2506 -0
  5. package/build/abi/angle-transmuter/Pyth.json +1534 -0
  6. package/build/abi/angle-transmuter/Transmuter.json +1711 -0
  7. package/build/abi/pharaoh/PharaohPool.abi.json +1582 -0
  8. package/build/abi/smardex/smardex-factory.json +185 -0
  9. package/build/abi/smardex/smardex-pool.json +578 -0
  10. package/build/abi/smardex/smardex-router.json +648 -0
  11. package/build/abi/trader-joe-v2_1/FactoryABI.json +1208 -0
  12. package/build/abi/trader-joe-v2_1/PairABI.json +1493 -0
  13. package/build/abi/trader-joe-v2_1/RouterABI.json +1489 -0
  14. package/build/abi/trader-joe-v2_1/StateMulticall.json +193 -0
  15. package/build/dex/angle-staked-stable/angle-staked-stable-pool.d.ts +55 -0
  16. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js +183 -0
  17. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js.map +1 -0
  18. package/build/dex/angle-staked-stable/angle-staked-stable.d.ts +50 -0
  19. package/build/dex/angle-staked-stable/angle-staked-stable.js +278 -0
  20. package/build/dex/angle-staked-stable/angle-staked-stable.js.map +1 -0
  21. package/build/dex/angle-staked-stable/config.d.ts +4 -0
  22. package/build/dex/angle-staked-stable/config.js +131 -0
  23. package/build/dex/angle-staked-stable/config.js.map +1 -0
  24. package/build/dex/angle-staked-stable/types.d.ts +17 -0
  25. package/build/dex/angle-staked-stable/types.js +3 -0
  26. package/build/dex/angle-staked-stable/types.js.map +1 -0
  27. package/build/dex/angle-transmuter/angle-transmuter-pool.d.ts +61 -0
  28. package/build/dex/angle-transmuter/angle-transmuter-pool.js +415 -0
  29. package/build/dex/angle-transmuter/angle-transmuter-pool.js.map +1 -0
  30. package/build/dex/angle-transmuter/angle-transmuter.d.ts +59 -0
  31. package/build/dex/angle-transmuter/angle-transmuter.js +262 -0
  32. package/build/dex/angle-transmuter/angle-transmuter.js.map +1 -0
  33. package/build/dex/angle-transmuter/backedOracle.d.ts +19 -0
  34. package/build/dex/angle-transmuter/backedOracle.js +56 -0
  35. package/build/dex/angle-transmuter/backedOracle.js.map +1 -0
  36. package/build/dex/angle-transmuter/config.d.ts +4 -0
  37. package/build/dex/angle-transmuter/config.js +30 -0
  38. package/build/dex/angle-transmuter/config.js.map +1 -0
  39. package/build/dex/angle-transmuter/constants.d.ts +77 -0
  40. package/build/dex/angle-transmuter/constants.js +94 -0
  41. package/build/dex/angle-transmuter/constants.js.map +1 -0
  42. package/build/dex/angle-transmuter/morphoOracle.d.ts +42 -0
  43. package/build/dex/angle-transmuter/morphoOracle.js +179 -0
  44. package/build/dex/angle-transmuter/morphoOracle.js.map +1 -0
  45. package/build/dex/angle-transmuter/morphoVault.d.ts +19 -0
  46. package/build/dex/angle-transmuter/morphoVault.js +78 -0
  47. package/build/dex/angle-transmuter/morphoVault.js.map +1 -0
  48. package/build/dex/angle-transmuter/pyth.d.ts +19 -0
  49. package/build/dex/angle-transmuter/pyth.js +70 -0
  50. package/build/dex/angle-transmuter/pyth.js.map +1 -0
  51. package/build/dex/angle-transmuter/redstone.d.ts +20 -0
  52. package/build/dex/angle-transmuter/redstone.js +73 -0
  53. package/build/dex/angle-transmuter/redstone.js.map +1 -0
  54. package/build/dex/angle-transmuter/transmuter.d.ts +52 -0
  55. package/build/dex/angle-transmuter/transmuter.js +374 -0
  56. package/build/dex/angle-transmuter/transmuter.js.map +1 -0
  57. package/build/dex/angle-transmuter/types.d.ts +188 -0
  58. package/build/dex/angle-transmuter/types.js +33 -0
  59. package/build/dex/angle-transmuter/types.js.map +1 -0
  60. package/build/dex/angle-transmuter/utils.d.ts +9 -0
  61. package/build/dex/angle-transmuter/utils.js +252 -0
  62. package/build/dex/angle-transmuter/utils.js.map +1 -0
  63. package/build/dex/hashflow/constants.d.ts +27 -0
  64. package/build/dex/hashflow/constants.js +29 -1
  65. package/build/dex/hashflow/constants.js.map +1 -1
  66. package/build/dex/hashflow/hashflow.d.ts +3 -2
  67. package/build/dex/hashflow/hashflow.js +77 -12
  68. package/build/dex/hashflow/hashflow.js.map +1 -1
  69. package/build/dex/hashflow/types.d.ts +11 -0
  70. package/build/dex/hashflow/types.js +9 -0
  71. package/build/dex/hashflow/types.js.map +1 -1
  72. package/build/dex/index.js +2 -0
  73. package/build/dex/index.js.map +1 -1
  74. package/build/dex/smardex/subgraph-queries.d.ts +1 -0
  75. package/build/dex/smardex/subgraph-queries.js +17 -0
  76. package/build/dex/smardex/subgraph-queries.js.map +1 -0
  77. package/build/dex/smardex/usd-reserves.d.ts +23 -0
  78. package/build/dex/smardex/usd-reserves.js +86 -0
  79. package/build/dex/smardex/usd-reserves.js.map +1 -0
  80. package/build/dex/solidly/config.js +12 -0
  81. package/build/dex/solidly/config.js.map +1 -1
  82. package/build/dex/solidly/forks-override/pharaohV1.d.ts +8 -0
  83. package/build/dex/solidly/forks-override/pharaohV1.js +15 -0
  84. package/build/dex/solidly/forks-override/pharaohV1.js.map +1 -0
  85. package/build/dex/solidly/solidly.js +1 -0
  86. package/build/dex/solidly/solidly.js.map +1 -1
  87. package/build/dex/trader-joe-v2-1-2/config.d.ts +4 -0
  88. package/build/dex/trader-joe-v2-1-2/config.js +47 -0
  89. package/build/dex/trader-joe-v2-1-2/config.js.map +1 -0
  90. package/build/dex/trader-joe-v2-1-2/constants.d.ts +20 -0
  91. package/build/dex/trader-joe-v2-1-2/constants.js +22 -0
  92. package/build/dex/trader-joe-v2-1-2/constants.js.map +1 -0
  93. package/build/dex/trader-joe-v2-1-2/math/index.d.ts +37 -0
  94. package/build/dex/trader-joe-v2-1-2/math/index.js +291 -0
  95. package/build/dex/trader-joe-v2-1-2/math/index.js.map +1 -0
  96. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.d.ts +60 -0
  97. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js +248 -0
  98. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js.map +1 -0
  99. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.d.ts +53 -0
  100. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js +307 -0
  101. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js.map +1 -0
  102. package/build/dex/trader-joe-v2-1-2/types.d.ts +82 -0
  103. package/build/dex/trader-joe-v2-1-2/types.js +9 -0
  104. package/build/dex/trader-joe-v2-1-2/types.js.map +1 -0
  105. package/build/dex/trader-joe-v2_1/config.d.ts +4 -0
  106. package/build/dex/trader-joe-v2_1/config.js +47 -0
  107. package/build/dex/trader-joe-v2_1/config.js.map +1 -0
  108. package/build/dex/trader-joe-v2_1/constants.d.ts +20 -0
  109. package/build/dex/trader-joe-v2_1/constants.js +22 -0
  110. package/build/dex/trader-joe-v2_1/constants.js.map +1 -0
  111. package/build/dex/trader-joe-v2_1/math/index.d.ts +37 -0
  112. package/build/dex/trader-joe-v2_1/math/index.js +291 -0
  113. package/build/dex/trader-joe-v2_1/math/index.js.map +1 -0
  114. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.d.ts +0 -0
  115. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js +384 -0
  116. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js.map +1 -0
  117. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.d.ts +60 -0
  118. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js +247 -0
  119. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js.map +1 -0
  120. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.d.ts +53 -0
  121. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js +307 -0
  122. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js.map +1 -0
  123. package/build/dex/trader-joe-v2_1/types.d.ts +82 -0
  124. package/build/dex/trader-joe-v2_1/types.js +9 -0
  125. package/build/dex/trader-joe-v2_1/types.js.map +1 -0
  126. package/build/dex/uniswap-v3/config.js +1 -1
  127. package/build/dex/uniswap-v3/config.js.map +1 -1
  128. package/build/dex/uniswap-v3/uniswap-v3.js +1 -1
  129. package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
  130. package/build/dex/wombat/wombat-pool-poller.d.ts +22 -0
  131. package/build/dex/wombat/wombat-pool-poller.js +164 -0
  132. package/build/dex/wombat/wombat-pool-poller.js.map +1 -0
  133. package/build/dex-helper/RedisBatcher.d.ts +20 -0
  134. package/build/dex-helper/RedisBatcher.js +75 -0
  135. package/build/dex-helper/RedisBatcher.js.map +1 -0
  136. package/package.json +1 -1
  137. package/src/dex/hashflow/constants.ts +32 -0
  138. package/src/dex/hashflow/hashflow.ts +131 -19
  139. package/src/dex/hashflow/types.ts +20 -2
  140. package/src/dex/index.ts +2 -0
  141. package/src/dex/solidly/config.ts +14 -0
  142. package/src/dex/solidly/forks-override/pharaohV1.ts +10 -0
  143. package/src/dex/solidly/solidly-e2e.test.ts +21 -0
  144. package/src/dex/solidly/solidly-integration.test.ts +143 -0
  145. package/src/dex/solidly/solidly.ts +1 -0
  146. package/src/dex/uniswap-v3/config.ts +1 -1
  147. package/src/dex/uniswap-v3/uniswap-v3-e2e.test.ts +2 -2
  148. package/src/dex/uniswap-v3/uniswap-v3-integration.test.ts +2 -2
  149. package/src/dex/uniswap-v3/uniswap-v3.ts +1 -1
  150. package/tests/constants-e2e.ts +5 -0
  151. package/build/abi/algebra/AlgebraPool.abi.json +0 -727
  152. package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +0 -52
  153. package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +0 -193
  154. package/build/dex/algebra/algebra-pool.d.ts +0 -46
  155. package/build/dex/algebra/algebra-pool.js +0 -336
  156. package/build/dex/algebra/algebra-pool.js.map +0 -1
  157. package/build/dex/quickswap/camelot-v3.d.ts +0 -6
  158. package/build/dex/quickswap/camelot-v3.js +0 -19
  159. package/build/dex/quickswap/camelot-v3.js.map +0 -1
  160. package/build/dex/quickswap/zyberswap-v3.d.ts +0 -6
  161. package/build/dex/quickswap/zyberswap-v3.js +0 -19
  162. package/build/dex/quickswap/zyberswap-v3.js.map +0 -1
  163. package/build/dex/uniswap-v2/rebase-tokens.json +0 -7
  164. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +0 -17
  165. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +0 -64
  166. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +0 -1
@@ -0,0 +1,1489 @@
1
+ [
2
+ {
3
+ "inputs": [
4
+ {
5
+ "internalType": "contract ILBFactory",
6
+ "name": "factory",
7
+ "type": "address"
8
+ },
9
+ {
10
+ "internalType": "contract IJoeFactory",
11
+ "name": "factoryV1",
12
+ "type": "address"
13
+ },
14
+ {
15
+ "internalType": "contract ILBLegacyFactory",
16
+ "name": "legacyFactory",
17
+ "type": "address"
18
+ },
19
+ {
20
+ "internalType": "contract ILBLegacyRouter",
21
+ "name": "legacyRouter",
22
+ "type": "address"
23
+ },
24
+ {
25
+ "internalType": "contract IWNATIVE",
26
+ "name": "wnative",
27
+ "type": "address"
28
+ }
29
+ ],
30
+ "stateMutability": "nonpayable",
31
+ "type": "constructor"
32
+ },
33
+ {
34
+ "inputs": [],
35
+ "name": "AddressHelper__CallFailed",
36
+ "type": "error"
37
+ },
38
+ {
39
+ "inputs": [],
40
+ "name": "AddressHelper__NonContract",
41
+ "type": "error"
42
+ },
43
+ {
44
+ "inputs": [],
45
+ "name": "JoeLibrary__InsufficientAmount",
46
+ "type": "error"
47
+ },
48
+ {
49
+ "inputs": [],
50
+ "name": "JoeLibrary__InsufficientLiquidity",
51
+ "type": "error"
52
+ },
53
+ {
54
+ "inputs": [
55
+ {
56
+ "internalType": "uint256",
57
+ "name": "amountSlippage",
58
+ "type": "uint256"
59
+ }
60
+ ],
61
+ "name": "LBRouter__AmountSlippageBPTooBig",
62
+ "type": "error"
63
+ },
64
+ {
65
+ "inputs": [
66
+ {
67
+ "internalType": "uint256",
68
+ "name": "amountXMin",
69
+ "type": "uint256"
70
+ },
71
+ {
72
+ "internalType": "uint256",
73
+ "name": "amountX",
74
+ "type": "uint256"
75
+ },
76
+ {
77
+ "internalType": "uint256",
78
+ "name": "amountYMin",
79
+ "type": "uint256"
80
+ },
81
+ {
82
+ "internalType": "uint256",
83
+ "name": "amountY",
84
+ "type": "uint256"
85
+ }
86
+ ],
87
+ "name": "LBRouter__AmountSlippageCaught",
88
+ "type": "error"
89
+ },
90
+ {
91
+ "inputs": [
92
+ {
93
+ "internalType": "uint256",
94
+ "name": "id",
95
+ "type": "uint256"
96
+ }
97
+ ],
98
+ "name": "LBRouter__BinReserveOverflows",
99
+ "type": "error"
100
+ },
101
+ {
102
+ "inputs": [],
103
+ "name": "LBRouter__BrokenSwapSafetyCheck",
104
+ "type": "error"
105
+ },
106
+ {
107
+ "inputs": [
108
+ {
109
+ "internalType": "uint256",
110
+ "name": "deadline",
111
+ "type": "uint256"
112
+ },
113
+ {
114
+ "internalType": "uint256",
115
+ "name": "currentTimestamp",
116
+ "type": "uint256"
117
+ }
118
+ ],
119
+ "name": "LBRouter__DeadlineExceeded",
120
+ "type": "error"
121
+ },
122
+ {
123
+ "inputs": [
124
+ {
125
+ "internalType": "address",
126
+ "name": "recipient",
127
+ "type": "address"
128
+ },
129
+ {
130
+ "internalType": "uint256",
131
+ "name": "amount",
132
+ "type": "uint256"
133
+ }
134
+ ],
135
+ "name": "LBRouter__FailedToSendNATIVE",
136
+ "type": "error"
137
+ },
138
+ {
139
+ "inputs": [
140
+ {
141
+ "internalType": "uint256",
142
+ "name": "idDesired",
143
+ "type": "uint256"
144
+ },
145
+ {
146
+ "internalType": "uint256",
147
+ "name": "idSlippage",
148
+ "type": "uint256"
149
+ }
150
+ ],
151
+ "name": "LBRouter__IdDesiredOverflows",
152
+ "type": "error"
153
+ },
154
+ {
155
+ "inputs": [
156
+ {
157
+ "internalType": "int256",
158
+ "name": "id",
159
+ "type": "int256"
160
+ }
161
+ ],
162
+ "name": "LBRouter__IdOverflows",
163
+ "type": "error"
164
+ },
165
+ {
166
+ "inputs": [
167
+ {
168
+ "internalType": "uint256",
169
+ "name": "activeIdDesired",
170
+ "type": "uint256"
171
+ },
172
+ {
173
+ "internalType": "uint256",
174
+ "name": "idSlippage",
175
+ "type": "uint256"
176
+ },
177
+ {
178
+ "internalType": "uint256",
179
+ "name": "activeId",
180
+ "type": "uint256"
181
+ }
182
+ ],
183
+ "name": "LBRouter__IdSlippageCaught",
184
+ "type": "error"
185
+ },
186
+ {
187
+ "inputs": [
188
+ {
189
+ "internalType": "uint256",
190
+ "name": "amountOutMin",
191
+ "type": "uint256"
192
+ },
193
+ {
194
+ "internalType": "uint256",
195
+ "name": "amountOut",
196
+ "type": "uint256"
197
+ }
198
+ ],
199
+ "name": "LBRouter__InsufficientAmountOut",
200
+ "type": "error"
201
+ },
202
+ {
203
+ "inputs": [
204
+ {
205
+ "internalType": "address",
206
+ "name": "wrongToken",
207
+ "type": "address"
208
+ }
209
+ ],
210
+ "name": "LBRouter__InvalidTokenPath",
211
+ "type": "error"
212
+ },
213
+ {
214
+ "inputs": [
215
+ {
216
+ "internalType": "uint256",
217
+ "name": "version",
218
+ "type": "uint256"
219
+ }
220
+ ],
221
+ "name": "LBRouter__InvalidVersion",
222
+ "type": "error"
223
+ },
224
+ {
225
+ "inputs": [],
226
+ "name": "LBRouter__LengthsMismatch",
227
+ "type": "error"
228
+ },
229
+ {
230
+ "inputs": [
231
+ {
232
+ "internalType": "uint256",
233
+ "name": "amountInMax",
234
+ "type": "uint256"
235
+ },
236
+ {
237
+ "internalType": "uint256",
238
+ "name": "amountIn",
239
+ "type": "uint256"
240
+ }
241
+ ],
242
+ "name": "LBRouter__MaxAmountInExceeded",
243
+ "type": "error"
244
+ },
245
+ {
246
+ "inputs": [],
247
+ "name": "LBRouter__NotFactoryOwner",
248
+ "type": "error"
249
+ },
250
+ {
251
+ "inputs": [
252
+ {
253
+ "internalType": "address",
254
+ "name": "tokenX",
255
+ "type": "address"
256
+ },
257
+ {
258
+ "internalType": "address",
259
+ "name": "tokenY",
260
+ "type": "address"
261
+ },
262
+ {
263
+ "internalType": "uint256",
264
+ "name": "binStep",
265
+ "type": "uint256"
266
+ }
267
+ ],
268
+ "name": "LBRouter__PairNotCreated",
269
+ "type": "error"
270
+ },
271
+ {
272
+ "inputs": [],
273
+ "name": "LBRouter__SenderIsNotWNATIVE",
274
+ "type": "error"
275
+ },
276
+ {
277
+ "inputs": [
278
+ {
279
+ "internalType": "uint256",
280
+ "name": "id",
281
+ "type": "uint256"
282
+ }
283
+ ],
284
+ "name": "LBRouter__SwapOverflows",
285
+ "type": "error"
286
+ },
287
+ {
288
+ "inputs": [
289
+ {
290
+ "internalType": "uint256",
291
+ "name": "excess",
292
+ "type": "uint256"
293
+ }
294
+ ],
295
+ "name": "LBRouter__TooMuchTokensIn",
296
+ "type": "error"
297
+ },
298
+ {
299
+ "inputs": [
300
+ {
301
+ "internalType": "uint256",
302
+ "name": "amount",
303
+ "type": "uint256"
304
+ },
305
+ {
306
+ "internalType": "uint256",
307
+ "name": "reserve",
308
+ "type": "uint256"
309
+ }
310
+ ],
311
+ "name": "LBRouter__WrongAmounts",
312
+ "type": "error"
313
+ },
314
+ {
315
+ "inputs": [
316
+ {
317
+ "internalType": "address",
318
+ "name": "tokenX",
319
+ "type": "address"
320
+ },
321
+ {
322
+ "internalType": "address",
323
+ "name": "tokenY",
324
+ "type": "address"
325
+ },
326
+ {
327
+ "internalType": "uint256",
328
+ "name": "amountX",
329
+ "type": "uint256"
330
+ },
331
+ {
332
+ "internalType": "uint256",
333
+ "name": "amountY",
334
+ "type": "uint256"
335
+ },
336
+ {
337
+ "internalType": "uint256",
338
+ "name": "msgValue",
339
+ "type": "uint256"
340
+ }
341
+ ],
342
+ "name": "LBRouter__WrongNativeLiquidityParameters",
343
+ "type": "error"
344
+ },
345
+ {
346
+ "inputs": [],
347
+ "name": "LBRouter__WrongTokenOrder",
348
+ "type": "error"
349
+ },
350
+ {
351
+ "inputs": [],
352
+ "name": "TokenHelper__TransferFailed",
353
+ "type": "error"
354
+ },
355
+ {
356
+ "inputs": [
357
+ {
358
+ "components": [
359
+ {
360
+ "internalType": "contract IERC20",
361
+ "name": "tokenX",
362
+ "type": "address"
363
+ },
364
+ {
365
+ "internalType": "contract IERC20",
366
+ "name": "tokenY",
367
+ "type": "address"
368
+ },
369
+ {
370
+ "internalType": "uint256",
371
+ "name": "binStep",
372
+ "type": "uint256"
373
+ },
374
+ {
375
+ "internalType": "uint256",
376
+ "name": "amountX",
377
+ "type": "uint256"
378
+ },
379
+ {
380
+ "internalType": "uint256",
381
+ "name": "amountY",
382
+ "type": "uint256"
383
+ },
384
+ {
385
+ "internalType": "uint256",
386
+ "name": "amountXMin",
387
+ "type": "uint256"
388
+ },
389
+ {
390
+ "internalType": "uint256",
391
+ "name": "amountYMin",
392
+ "type": "uint256"
393
+ },
394
+ {
395
+ "internalType": "uint256",
396
+ "name": "activeIdDesired",
397
+ "type": "uint256"
398
+ },
399
+ {
400
+ "internalType": "uint256",
401
+ "name": "idSlippage",
402
+ "type": "uint256"
403
+ },
404
+ {
405
+ "internalType": "int256[]",
406
+ "name": "deltaIds",
407
+ "type": "int256[]"
408
+ },
409
+ {
410
+ "internalType": "uint256[]",
411
+ "name": "distributionX",
412
+ "type": "uint256[]"
413
+ },
414
+ {
415
+ "internalType": "uint256[]",
416
+ "name": "distributionY",
417
+ "type": "uint256[]"
418
+ },
419
+ {
420
+ "internalType": "address",
421
+ "name": "to",
422
+ "type": "address"
423
+ },
424
+ {
425
+ "internalType": "address",
426
+ "name": "refundTo",
427
+ "type": "address"
428
+ },
429
+ {
430
+ "internalType": "uint256",
431
+ "name": "deadline",
432
+ "type": "uint256"
433
+ }
434
+ ],
435
+ "internalType": "struct ILBRouter.LiquidityParameters",
436
+ "name": "liquidityParameters",
437
+ "type": "tuple"
438
+ }
439
+ ],
440
+ "name": "addLiquidity",
441
+ "outputs": [
442
+ {
443
+ "internalType": "uint256",
444
+ "name": "amountXAdded",
445
+ "type": "uint256"
446
+ },
447
+ {
448
+ "internalType": "uint256",
449
+ "name": "amountYAdded",
450
+ "type": "uint256"
451
+ },
452
+ {
453
+ "internalType": "uint256",
454
+ "name": "amountXLeft",
455
+ "type": "uint256"
456
+ },
457
+ {
458
+ "internalType": "uint256",
459
+ "name": "amountYLeft",
460
+ "type": "uint256"
461
+ },
462
+ {
463
+ "internalType": "uint256[]",
464
+ "name": "depositIds",
465
+ "type": "uint256[]"
466
+ },
467
+ {
468
+ "internalType": "uint256[]",
469
+ "name": "liquidityMinted",
470
+ "type": "uint256[]"
471
+ }
472
+ ],
473
+ "stateMutability": "nonpayable",
474
+ "type": "function"
475
+ },
476
+ {
477
+ "inputs": [
478
+ {
479
+ "components": [
480
+ {
481
+ "internalType": "contract IERC20",
482
+ "name": "tokenX",
483
+ "type": "address"
484
+ },
485
+ {
486
+ "internalType": "contract IERC20",
487
+ "name": "tokenY",
488
+ "type": "address"
489
+ },
490
+ {
491
+ "internalType": "uint256",
492
+ "name": "binStep",
493
+ "type": "uint256"
494
+ },
495
+ {
496
+ "internalType": "uint256",
497
+ "name": "amountX",
498
+ "type": "uint256"
499
+ },
500
+ {
501
+ "internalType": "uint256",
502
+ "name": "amountY",
503
+ "type": "uint256"
504
+ },
505
+ {
506
+ "internalType": "uint256",
507
+ "name": "amountXMin",
508
+ "type": "uint256"
509
+ },
510
+ {
511
+ "internalType": "uint256",
512
+ "name": "amountYMin",
513
+ "type": "uint256"
514
+ },
515
+ {
516
+ "internalType": "uint256",
517
+ "name": "activeIdDesired",
518
+ "type": "uint256"
519
+ },
520
+ {
521
+ "internalType": "uint256",
522
+ "name": "idSlippage",
523
+ "type": "uint256"
524
+ },
525
+ {
526
+ "internalType": "int256[]",
527
+ "name": "deltaIds",
528
+ "type": "int256[]"
529
+ },
530
+ {
531
+ "internalType": "uint256[]",
532
+ "name": "distributionX",
533
+ "type": "uint256[]"
534
+ },
535
+ {
536
+ "internalType": "uint256[]",
537
+ "name": "distributionY",
538
+ "type": "uint256[]"
539
+ },
540
+ {
541
+ "internalType": "address",
542
+ "name": "to",
543
+ "type": "address"
544
+ },
545
+ {
546
+ "internalType": "address",
547
+ "name": "refundTo",
548
+ "type": "address"
549
+ },
550
+ {
551
+ "internalType": "uint256",
552
+ "name": "deadline",
553
+ "type": "uint256"
554
+ }
555
+ ],
556
+ "internalType": "struct ILBRouter.LiquidityParameters",
557
+ "name": "liquidityParameters",
558
+ "type": "tuple"
559
+ }
560
+ ],
561
+ "name": "addLiquidityNATIVE",
562
+ "outputs": [
563
+ {
564
+ "internalType": "uint256",
565
+ "name": "amountXAdded",
566
+ "type": "uint256"
567
+ },
568
+ {
569
+ "internalType": "uint256",
570
+ "name": "amountYAdded",
571
+ "type": "uint256"
572
+ },
573
+ {
574
+ "internalType": "uint256",
575
+ "name": "amountXLeft",
576
+ "type": "uint256"
577
+ },
578
+ {
579
+ "internalType": "uint256",
580
+ "name": "amountYLeft",
581
+ "type": "uint256"
582
+ },
583
+ {
584
+ "internalType": "uint256[]",
585
+ "name": "depositIds",
586
+ "type": "uint256[]"
587
+ },
588
+ {
589
+ "internalType": "uint256[]",
590
+ "name": "liquidityMinted",
591
+ "type": "uint256[]"
592
+ }
593
+ ],
594
+ "stateMutability": "payable",
595
+ "type": "function"
596
+ },
597
+ {
598
+ "inputs": [
599
+ {
600
+ "internalType": "contract IERC20",
601
+ "name": "tokenX",
602
+ "type": "address"
603
+ },
604
+ {
605
+ "internalType": "contract IERC20",
606
+ "name": "tokenY",
607
+ "type": "address"
608
+ },
609
+ {
610
+ "internalType": "uint24",
611
+ "name": "activeId",
612
+ "type": "uint24"
613
+ },
614
+ {
615
+ "internalType": "uint16",
616
+ "name": "binStep",
617
+ "type": "uint16"
618
+ }
619
+ ],
620
+ "name": "createLBPair",
621
+ "outputs": [
622
+ {
623
+ "internalType": "contract ILBPair",
624
+ "name": "pair",
625
+ "type": "address"
626
+ }
627
+ ],
628
+ "stateMutability": "nonpayable",
629
+ "type": "function"
630
+ },
631
+ {
632
+ "inputs": [],
633
+ "name": "getFactory",
634
+ "outputs": [
635
+ {
636
+ "internalType": "contract ILBFactory",
637
+ "name": "lbFactory",
638
+ "type": "address"
639
+ }
640
+ ],
641
+ "stateMutability": "view",
642
+ "type": "function"
643
+ },
644
+ {
645
+ "inputs": [
646
+ {
647
+ "internalType": "contract ILBPair",
648
+ "name": "pair",
649
+ "type": "address"
650
+ },
651
+ {
652
+ "internalType": "uint256",
653
+ "name": "price",
654
+ "type": "uint256"
655
+ }
656
+ ],
657
+ "name": "getIdFromPrice",
658
+ "outputs": [
659
+ {
660
+ "internalType": "uint24",
661
+ "name": "",
662
+ "type": "uint24"
663
+ }
664
+ ],
665
+ "stateMutability": "view",
666
+ "type": "function"
667
+ },
668
+ {
669
+ "inputs": [],
670
+ "name": "getLegacyFactory",
671
+ "outputs": [
672
+ {
673
+ "internalType": "contract ILBLegacyFactory",
674
+ "name": "legacyLBfactory",
675
+ "type": "address"
676
+ }
677
+ ],
678
+ "stateMutability": "view",
679
+ "type": "function"
680
+ },
681
+ {
682
+ "inputs": [],
683
+ "name": "getLegacyRouter",
684
+ "outputs": [
685
+ {
686
+ "internalType": "contract ILBLegacyRouter",
687
+ "name": "legacyRouter",
688
+ "type": "address"
689
+ }
690
+ ],
691
+ "stateMutability": "view",
692
+ "type": "function"
693
+ },
694
+ {
695
+ "inputs": [
696
+ {
697
+ "internalType": "contract ILBPair",
698
+ "name": "pair",
699
+ "type": "address"
700
+ },
701
+ {
702
+ "internalType": "uint24",
703
+ "name": "id",
704
+ "type": "uint24"
705
+ }
706
+ ],
707
+ "name": "getPriceFromId",
708
+ "outputs": [
709
+ {
710
+ "internalType": "uint256",
711
+ "name": "",
712
+ "type": "uint256"
713
+ }
714
+ ],
715
+ "stateMutability": "view",
716
+ "type": "function"
717
+ },
718
+ {
719
+ "inputs": [
720
+ {
721
+ "internalType": "contract ILBPair",
722
+ "name": "pair",
723
+ "type": "address"
724
+ },
725
+ {
726
+ "internalType": "uint128",
727
+ "name": "amountOut",
728
+ "type": "uint128"
729
+ },
730
+ {
731
+ "internalType": "bool",
732
+ "name": "swapForY",
733
+ "type": "bool"
734
+ }
735
+ ],
736
+ "name": "getSwapIn",
737
+ "outputs": [
738
+ {
739
+ "internalType": "uint128",
740
+ "name": "amountIn",
741
+ "type": "uint128"
742
+ },
743
+ {
744
+ "internalType": "uint128",
745
+ "name": "amountOutLeft",
746
+ "type": "uint128"
747
+ },
748
+ {
749
+ "internalType": "uint128",
750
+ "name": "fee",
751
+ "type": "uint128"
752
+ }
753
+ ],
754
+ "stateMutability": "view",
755
+ "type": "function"
756
+ },
757
+ {
758
+ "inputs": [
759
+ {
760
+ "internalType": "contract ILBPair",
761
+ "name": "pair",
762
+ "type": "address"
763
+ },
764
+ {
765
+ "internalType": "uint128",
766
+ "name": "amountIn",
767
+ "type": "uint128"
768
+ },
769
+ {
770
+ "internalType": "bool",
771
+ "name": "swapForY",
772
+ "type": "bool"
773
+ }
774
+ ],
775
+ "name": "getSwapOut",
776
+ "outputs": [
777
+ {
778
+ "internalType": "uint128",
779
+ "name": "amountInLeft",
780
+ "type": "uint128"
781
+ },
782
+ {
783
+ "internalType": "uint128",
784
+ "name": "amountOut",
785
+ "type": "uint128"
786
+ },
787
+ {
788
+ "internalType": "uint128",
789
+ "name": "fee",
790
+ "type": "uint128"
791
+ }
792
+ ],
793
+ "stateMutability": "view",
794
+ "type": "function"
795
+ },
796
+ {
797
+ "inputs": [],
798
+ "name": "getV1Factory",
799
+ "outputs": [
800
+ {
801
+ "internalType": "contract IJoeFactory",
802
+ "name": "factoryV1",
803
+ "type": "address"
804
+ }
805
+ ],
806
+ "stateMutability": "view",
807
+ "type": "function"
808
+ },
809
+ {
810
+ "inputs": [],
811
+ "name": "getWNATIVE",
812
+ "outputs": [
813
+ {
814
+ "internalType": "contract IWNATIVE",
815
+ "name": "wnative",
816
+ "type": "address"
817
+ }
818
+ ],
819
+ "stateMutability": "view",
820
+ "type": "function"
821
+ },
822
+ {
823
+ "inputs": [
824
+ {
825
+ "internalType": "contract IERC20",
826
+ "name": "tokenX",
827
+ "type": "address"
828
+ },
829
+ {
830
+ "internalType": "contract IERC20",
831
+ "name": "tokenY",
832
+ "type": "address"
833
+ },
834
+ {
835
+ "internalType": "uint16",
836
+ "name": "binStep",
837
+ "type": "uint16"
838
+ },
839
+ {
840
+ "internalType": "uint256",
841
+ "name": "amountXMin",
842
+ "type": "uint256"
843
+ },
844
+ {
845
+ "internalType": "uint256",
846
+ "name": "amountYMin",
847
+ "type": "uint256"
848
+ },
849
+ {
850
+ "internalType": "uint256[]",
851
+ "name": "ids",
852
+ "type": "uint256[]"
853
+ },
854
+ {
855
+ "internalType": "uint256[]",
856
+ "name": "amounts",
857
+ "type": "uint256[]"
858
+ },
859
+ {
860
+ "internalType": "address",
861
+ "name": "to",
862
+ "type": "address"
863
+ },
864
+ {
865
+ "internalType": "uint256",
866
+ "name": "deadline",
867
+ "type": "uint256"
868
+ }
869
+ ],
870
+ "name": "removeLiquidity",
871
+ "outputs": [
872
+ {
873
+ "internalType": "uint256",
874
+ "name": "amountX",
875
+ "type": "uint256"
876
+ },
877
+ {
878
+ "internalType": "uint256",
879
+ "name": "amountY",
880
+ "type": "uint256"
881
+ }
882
+ ],
883
+ "stateMutability": "nonpayable",
884
+ "type": "function"
885
+ },
886
+ {
887
+ "inputs": [
888
+ {
889
+ "internalType": "contract IERC20",
890
+ "name": "token",
891
+ "type": "address"
892
+ },
893
+ {
894
+ "internalType": "uint16",
895
+ "name": "binStep",
896
+ "type": "uint16"
897
+ },
898
+ {
899
+ "internalType": "uint256",
900
+ "name": "amountTokenMin",
901
+ "type": "uint256"
902
+ },
903
+ {
904
+ "internalType": "uint256",
905
+ "name": "amountNATIVEMin",
906
+ "type": "uint256"
907
+ },
908
+ {
909
+ "internalType": "uint256[]",
910
+ "name": "ids",
911
+ "type": "uint256[]"
912
+ },
913
+ {
914
+ "internalType": "uint256[]",
915
+ "name": "amounts",
916
+ "type": "uint256[]"
917
+ },
918
+ {
919
+ "internalType": "address payable",
920
+ "name": "to",
921
+ "type": "address"
922
+ },
923
+ {
924
+ "internalType": "uint256",
925
+ "name": "deadline",
926
+ "type": "uint256"
927
+ }
928
+ ],
929
+ "name": "removeLiquidityNATIVE",
930
+ "outputs": [
931
+ {
932
+ "internalType": "uint256",
933
+ "name": "amountToken",
934
+ "type": "uint256"
935
+ },
936
+ {
937
+ "internalType": "uint256",
938
+ "name": "amountNATIVE",
939
+ "type": "uint256"
940
+ }
941
+ ],
942
+ "stateMutability": "nonpayable",
943
+ "type": "function"
944
+ },
945
+ {
946
+ "inputs": [
947
+ {
948
+ "internalType": "uint256",
949
+ "name": "amountOutMin",
950
+ "type": "uint256"
951
+ },
952
+ {
953
+ "components": [
954
+ {
955
+ "internalType": "uint256[]",
956
+ "name": "pairBinSteps",
957
+ "type": "uint256[]"
958
+ },
959
+ {
960
+ "internalType": "enum ILBRouter.Version[]",
961
+ "name": "versions",
962
+ "type": "uint8[]"
963
+ },
964
+ {
965
+ "internalType": "contract IERC20[]",
966
+ "name": "tokenPath",
967
+ "type": "address[]"
968
+ }
969
+ ],
970
+ "internalType": "struct ILBRouter.Path",
971
+ "name": "path",
972
+ "type": "tuple"
973
+ },
974
+ {
975
+ "internalType": "address",
976
+ "name": "to",
977
+ "type": "address"
978
+ },
979
+ {
980
+ "internalType": "uint256",
981
+ "name": "deadline",
982
+ "type": "uint256"
983
+ }
984
+ ],
985
+ "name": "swapExactNATIVEForTokens",
986
+ "outputs": [
987
+ {
988
+ "internalType": "uint256",
989
+ "name": "amountOut",
990
+ "type": "uint256"
991
+ }
992
+ ],
993
+ "stateMutability": "payable",
994
+ "type": "function"
995
+ },
996
+ {
997
+ "inputs": [
998
+ {
999
+ "internalType": "uint256",
1000
+ "name": "amountOutMin",
1001
+ "type": "uint256"
1002
+ },
1003
+ {
1004
+ "components": [
1005
+ {
1006
+ "internalType": "uint256[]",
1007
+ "name": "pairBinSteps",
1008
+ "type": "uint256[]"
1009
+ },
1010
+ {
1011
+ "internalType": "enum ILBRouter.Version[]",
1012
+ "name": "versions",
1013
+ "type": "uint8[]"
1014
+ },
1015
+ {
1016
+ "internalType": "contract IERC20[]",
1017
+ "name": "tokenPath",
1018
+ "type": "address[]"
1019
+ }
1020
+ ],
1021
+ "internalType": "struct ILBRouter.Path",
1022
+ "name": "path",
1023
+ "type": "tuple"
1024
+ },
1025
+ {
1026
+ "internalType": "address",
1027
+ "name": "to",
1028
+ "type": "address"
1029
+ },
1030
+ {
1031
+ "internalType": "uint256",
1032
+ "name": "deadline",
1033
+ "type": "uint256"
1034
+ }
1035
+ ],
1036
+ "name": "swapExactNATIVEForTokensSupportingFeeOnTransferTokens",
1037
+ "outputs": [
1038
+ {
1039
+ "internalType": "uint256",
1040
+ "name": "amountOut",
1041
+ "type": "uint256"
1042
+ }
1043
+ ],
1044
+ "stateMutability": "payable",
1045
+ "type": "function"
1046
+ },
1047
+ {
1048
+ "inputs": [
1049
+ {
1050
+ "internalType": "uint256",
1051
+ "name": "amountIn",
1052
+ "type": "uint256"
1053
+ },
1054
+ {
1055
+ "internalType": "uint256",
1056
+ "name": "amountOutMinNATIVE",
1057
+ "type": "uint256"
1058
+ },
1059
+ {
1060
+ "components": [
1061
+ {
1062
+ "internalType": "uint256[]",
1063
+ "name": "pairBinSteps",
1064
+ "type": "uint256[]"
1065
+ },
1066
+ {
1067
+ "internalType": "enum ILBRouter.Version[]",
1068
+ "name": "versions",
1069
+ "type": "uint8[]"
1070
+ },
1071
+ {
1072
+ "internalType": "contract IERC20[]",
1073
+ "name": "tokenPath",
1074
+ "type": "address[]"
1075
+ }
1076
+ ],
1077
+ "internalType": "struct ILBRouter.Path",
1078
+ "name": "path",
1079
+ "type": "tuple"
1080
+ },
1081
+ {
1082
+ "internalType": "address payable",
1083
+ "name": "to",
1084
+ "type": "address"
1085
+ },
1086
+ {
1087
+ "internalType": "uint256",
1088
+ "name": "deadline",
1089
+ "type": "uint256"
1090
+ }
1091
+ ],
1092
+ "name": "swapExactTokensForNATIVE",
1093
+ "outputs": [
1094
+ {
1095
+ "internalType": "uint256",
1096
+ "name": "amountOut",
1097
+ "type": "uint256"
1098
+ }
1099
+ ],
1100
+ "stateMutability": "nonpayable",
1101
+ "type": "function"
1102
+ },
1103
+ {
1104
+ "inputs": [
1105
+ {
1106
+ "internalType": "uint256",
1107
+ "name": "amountIn",
1108
+ "type": "uint256"
1109
+ },
1110
+ {
1111
+ "internalType": "uint256",
1112
+ "name": "amountOutMinNATIVE",
1113
+ "type": "uint256"
1114
+ },
1115
+ {
1116
+ "components": [
1117
+ {
1118
+ "internalType": "uint256[]",
1119
+ "name": "pairBinSteps",
1120
+ "type": "uint256[]"
1121
+ },
1122
+ {
1123
+ "internalType": "enum ILBRouter.Version[]",
1124
+ "name": "versions",
1125
+ "type": "uint8[]"
1126
+ },
1127
+ {
1128
+ "internalType": "contract IERC20[]",
1129
+ "name": "tokenPath",
1130
+ "type": "address[]"
1131
+ }
1132
+ ],
1133
+ "internalType": "struct ILBRouter.Path",
1134
+ "name": "path",
1135
+ "type": "tuple"
1136
+ },
1137
+ {
1138
+ "internalType": "address payable",
1139
+ "name": "to",
1140
+ "type": "address"
1141
+ },
1142
+ {
1143
+ "internalType": "uint256",
1144
+ "name": "deadline",
1145
+ "type": "uint256"
1146
+ }
1147
+ ],
1148
+ "name": "swapExactTokensForNATIVESupportingFeeOnTransferTokens",
1149
+ "outputs": [
1150
+ {
1151
+ "internalType": "uint256",
1152
+ "name": "amountOut",
1153
+ "type": "uint256"
1154
+ }
1155
+ ],
1156
+ "stateMutability": "nonpayable",
1157
+ "type": "function"
1158
+ },
1159
+ {
1160
+ "inputs": [
1161
+ {
1162
+ "internalType": "uint256",
1163
+ "name": "amountIn",
1164
+ "type": "uint256"
1165
+ },
1166
+ {
1167
+ "internalType": "uint256",
1168
+ "name": "amountOutMin",
1169
+ "type": "uint256"
1170
+ },
1171
+ {
1172
+ "components": [
1173
+ {
1174
+ "internalType": "uint256[]",
1175
+ "name": "pairBinSteps",
1176
+ "type": "uint256[]"
1177
+ },
1178
+ {
1179
+ "internalType": "enum ILBRouter.Version[]",
1180
+ "name": "versions",
1181
+ "type": "uint8[]"
1182
+ },
1183
+ {
1184
+ "internalType": "contract IERC20[]",
1185
+ "name": "tokenPath",
1186
+ "type": "address[]"
1187
+ }
1188
+ ],
1189
+ "internalType": "struct ILBRouter.Path",
1190
+ "name": "path",
1191
+ "type": "tuple"
1192
+ },
1193
+ {
1194
+ "internalType": "address",
1195
+ "name": "to",
1196
+ "type": "address"
1197
+ },
1198
+ {
1199
+ "internalType": "uint256",
1200
+ "name": "deadline",
1201
+ "type": "uint256"
1202
+ }
1203
+ ],
1204
+ "name": "swapExactTokensForTokens",
1205
+ "outputs": [
1206
+ {
1207
+ "internalType": "uint256",
1208
+ "name": "amountOut",
1209
+ "type": "uint256"
1210
+ }
1211
+ ],
1212
+ "stateMutability": "nonpayable",
1213
+ "type": "function"
1214
+ },
1215
+ {
1216
+ "inputs": [
1217
+ {
1218
+ "internalType": "uint256",
1219
+ "name": "amountIn",
1220
+ "type": "uint256"
1221
+ },
1222
+ {
1223
+ "internalType": "uint256",
1224
+ "name": "amountOutMin",
1225
+ "type": "uint256"
1226
+ },
1227
+ {
1228
+ "components": [
1229
+ {
1230
+ "internalType": "uint256[]",
1231
+ "name": "pairBinSteps",
1232
+ "type": "uint256[]"
1233
+ },
1234
+ {
1235
+ "internalType": "enum ILBRouter.Version[]",
1236
+ "name": "versions",
1237
+ "type": "uint8[]"
1238
+ },
1239
+ {
1240
+ "internalType": "contract IERC20[]",
1241
+ "name": "tokenPath",
1242
+ "type": "address[]"
1243
+ }
1244
+ ],
1245
+ "internalType": "struct ILBRouter.Path",
1246
+ "name": "path",
1247
+ "type": "tuple"
1248
+ },
1249
+ {
1250
+ "internalType": "address",
1251
+ "name": "to",
1252
+ "type": "address"
1253
+ },
1254
+ {
1255
+ "internalType": "uint256",
1256
+ "name": "deadline",
1257
+ "type": "uint256"
1258
+ }
1259
+ ],
1260
+ "name": "swapExactTokensForTokensSupportingFeeOnTransferTokens",
1261
+ "outputs": [
1262
+ {
1263
+ "internalType": "uint256",
1264
+ "name": "amountOut",
1265
+ "type": "uint256"
1266
+ }
1267
+ ],
1268
+ "stateMutability": "nonpayable",
1269
+ "type": "function"
1270
+ },
1271
+ {
1272
+ "inputs": [
1273
+ {
1274
+ "internalType": "uint256",
1275
+ "name": "amountOut",
1276
+ "type": "uint256"
1277
+ },
1278
+ {
1279
+ "components": [
1280
+ {
1281
+ "internalType": "uint256[]",
1282
+ "name": "pairBinSteps",
1283
+ "type": "uint256[]"
1284
+ },
1285
+ {
1286
+ "internalType": "enum ILBRouter.Version[]",
1287
+ "name": "versions",
1288
+ "type": "uint8[]"
1289
+ },
1290
+ {
1291
+ "internalType": "contract IERC20[]",
1292
+ "name": "tokenPath",
1293
+ "type": "address[]"
1294
+ }
1295
+ ],
1296
+ "internalType": "struct ILBRouter.Path",
1297
+ "name": "path",
1298
+ "type": "tuple"
1299
+ },
1300
+ {
1301
+ "internalType": "address",
1302
+ "name": "to",
1303
+ "type": "address"
1304
+ },
1305
+ {
1306
+ "internalType": "uint256",
1307
+ "name": "deadline",
1308
+ "type": "uint256"
1309
+ }
1310
+ ],
1311
+ "name": "swapNATIVEForExactTokens",
1312
+ "outputs": [
1313
+ {
1314
+ "internalType": "uint256[]",
1315
+ "name": "amountsIn",
1316
+ "type": "uint256[]"
1317
+ }
1318
+ ],
1319
+ "stateMutability": "payable",
1320
+ "type": "function"
1321
+ },
1322
+ {
1323
+ "inputs": [
1324
+ {
1325
+ "internalType": "uint256",
1326
+ "name": "amountNATIVEOut",
1327
+ "type": "uint256"
1328
+ },
1329
+ {
1330
+ "internalType": "uint256",
1331
+ "name": "amountInMax",
1332
+ "type": "uint256"
1333
+ },
1334
+ {
1335
+ "components": [
1336
+ {
1337
+ "internalType": "uint256[]",
1338
+ "name": "pairBinSteps",
1339
+ "type": "uint256[]"
1340
+ },
1341
+ {
1342
+ "internalType": "enum ILBRouter.Version[]",
1343
+ "name": "versions",
1344
+ "type": "uint8[]"
1345
+ },
1346
+ {
1347
+ "internalType": "contract IERC20[]",
1348
+ "name": "tokenPath",
1349
+ "type": "address[]"
1350
+ }
1351
+ ],
1352
+ "internalType": "struct ILBRouter.Path",
1353
+ "name": "path",
1354
+ "type": "tuple"
1355
+ },
1356
+ {
1357
+ "internalType": "address payable",
1358
+ "name": "to",
1359
+ "type": "address"
1360
+ },
1361
+ {
1362
+ "internalType": "uint256",
1363
+ "name": "deadline",
1364
+ "type": "uint256"
1365
+ }
1366
+ ],
1367
+ "name": "swapTokensForExactNATIVE",
1368
+ "outputs": [
1369
+ {
1370
+ "internalType": "uint256[]",
1371
+ "name": "amountsIn",
1372
+ "type": "uint256[]"
1373
+ }
1374
+ ],
1375
+ "stateMutability": "nonpayable",
1376
+ "type": "function"
1377
+ },
1378
+ {
1379
+ "inputs": [
1380
+ {
1381
+ "internalType": "uint256",
1382
+ "name": "amountOut",
1383
+ "type": "uint256"
1384
+ },
1385
+ {
1386
+ "internalType": "uint256",
1387
+ "name": "amountInMax",
1388
+ "type": "uint256"
1389
+ },
1390
+ {
1391
+ "components": [
1392
+ {
1393
+ "internalType": "uint256[]",
1394
+ "name": "pairBinSteps",
1395
+ "type": "uint256[]"
1396
+ },
1397
+ {
1398
+ "internalType": "enum ILBRouter.Version[]",
1399
+ "name": "versions",
1400
+ "type": "uint8[]"
1401
+ },
1402
+ {
1403
+ "internalType": "contract IERC20[]",
1404
+ "name": "tokenPath",
1405
+ "type": "address[]"
1406
+ }
1407
+ ],
1408
+ "internalType": "struct ILBRouter.Path",
1409
+ "name": "path",
1410
+ "type": "tuple"
1411
+ },
1412
+ {
1413
+ "internalType": "address",
1414
+ "name": "to",
1415
+ "type": "address"
1416
+ },
1417
+ {
1418
+ "internalType": "uint256",
1419
+ "name": "deadline",
1420
+ "type": "uint256"
1421
+ }
1422
+ ],
1423
+ "name": "swapTokensForExactTokens",
1424
+ "outputs": [
1425
+ {
1426
+ "internalType": "uint256[]",
1427
+ "name": "amountsIn",
1428
+ "type": "uint256[]"
1429
+ }
1430
+ ],
1431
+ "stateMutability": "nonpayable",
1432
+ "type": "function"
1433
+ },
1434
+ {
1435
+ "inputs": [
1436
+ {
1437
+ "internalType": "contract IERC20",
1438
+ "name": "token",
1439
+ "type": "address"
1440
+ },
1441
+ {
1442
+ "internalType": "address",
1443
+ "name": "to",
1444
+ "type": "address"
1445
+ },
1446
+ {
1447
+ "internalType": "uint256",
1448
+ "name": "amount",
1449
+ "type": "uint256"
1450
+ }
1451
+ ],
1452
+ "name": "sweep",
1453
+ "outputs": [],
1454
+ "stateMutability": "nonpayable",
1455
+ "type": "function"
1456
+ },
1457
+ {
1458
+ "inputs": [
1459
+ {
1460
+ "internalType": "contract ILBToken",
1461
+ "name": "lbToken",
1462
+ "type": "address"
1463
+ },
1464
+ {
1465
+ "internalType": "address",
1466
+ "name": "to",
1467
+ "type": "address"
1468
+ },
1469
+ {
1470
+ "internalType": "uint256[]",
1471
+ "name": "ids",
1472
+ "type": "uint256[]"
1473
+ },
1474
+ {
1475
+ "internalType": "uint256[]",
1476
+ "name": "amounts",
1477
+ "type": "uint256[]"
1478
+ }
1479
+ ],
1480
+ "name": "sweepLBToken",
1481
+ "outputs": [],
1482
+ "stateMutability": "nonpayable",
1483
+ "type": "function"
1484
+ },
1485
+ {
1486
+ "stateMutability": "payable",
1487
+ "type": "receive"
1488
+ }
1489
+ ]