UNPKG

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