Created
August 23, 2022 19:59
-
-
Save 0xfoobar/8c321a18618c8bea8c31fa8e6f511f6a to your computer and use it in GitHub Desktop.
ForteRouter at 0x0e2374110f4Eba21f396FBf2d92cC469372f7DA0
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[ | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "_factory", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "_wcanto", | |
"type": "address" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256[]", | |
"name": "amounts", | |
"type": "uint256[]" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "address", | |
"name": "from", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
} | |
], | |
"internalType": "struct Router.route[]", | |
"name": "routes", | |
"type": "tuple[]" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "deadline", | |
"type": "uint256" | |
} | |
], | |
"name": "UNSAFE_swapExactTokensForTokens", | |
"outputs": [ | |
{ | |
"internalType": "uint256[]", | |
"name": "", | |
"type": "uint256[]" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "tokenA", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenB", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
}, | |
{ | |
"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": "bool", | |
"name": "stable", | |
"type": "bool" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountTokenDesired", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountTokenMin", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountCANTOMin", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "deadline", | |
"type": "uint256" | |
} | |
], | |
"name": "addLiquidityCANTO", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountToken", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountCANTO", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "liquidity", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "payable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "factory", | |
"outputs": [ | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountIn", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenIn", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenOut", | |
"type": "address" | |
} | |
], | |
"name": "getAmountOut", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amount", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountIn", | |
"type": "uint256" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "address", | |
"name": "from", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
} | |
], | |
"internalType": "struct Router.route[]", | |
"name": "routes", | |
"type": "tuple[]" | |
} | |
], | |
"name": "getAmountsOut", | |
"outputs": [ | |
{ | |
"internalType": "uint256[]", | |
"name": "amounts", | |
"type": "uint256[]" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "tokenA", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenB", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
} | |
], | |
"name": "getReserves", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "reserveA", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "reserveB", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "pair", | |
"type": "address" | |
} | |
], | |
"name": "isPair", | |
"outputs": [ | |
{ | |
"internalType": "bool", | |
"name": "", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "tokenA", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenB", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
} | |
], | |
"name": "pairFor", | |
"outputs": [ | |
{ | |
"internalType": "address", | |
"name": "pair", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "tokenA", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenB", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountADesired", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountBDesired", | |
"type": "uint256" | |
} | |
], | |
"name": "quoteAddLiquidity", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountA", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountB", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "liquidity", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "tokenA", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenB", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "liquidity", | |
"type": "uint256" | |
} | |
], | |
"name": "quoteRemoveLiquidity", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountA", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountB", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "tokenA", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenB", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
}, | |
{ | |
"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": "bool", | |
"name": "stable", | |
"type": "bool" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "liquidity", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountTokenMin", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountCANTOMin", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "deadline", | |
"type": "uint256" | |
} | |
], | |
"name": "removeLiquidityCANTO", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountToken", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountCANTO", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "token", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "liquidity", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountTokenMin", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountCANTOMin", | |
"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": "removeLiquidityCANTOWithPermit", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountToken", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountCANTO", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "tokenA", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenB", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
}, | |
{ | |
"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": "address", | |
"name": "tokenA", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenB", | |
"type": "address" | |
} | |
], | |
"name": "sortTokens", | |
"outputs": [ | |
{ | |
"internalType": "address", | |
"name": "token0", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "token1", | |
"type": "address" | |
} | |
], | |
"stateMutability": "pure", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountOutMin", | |
"type": "uint256" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "address", | |
"name": "from", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
} | |
], | |
"internalType": "struct Router.route[]", | |
"name": "routes", | |
"type": "tuple[]" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "deadline", | |
"type": "uint256" | |
} | |
], | |
"name": "swapExactCANTOForTokens", | |
"outputs": [ | |
{ | |
"internalType": "uint256[]", | |
"name": "amounts", | |
"type": "uint256[]" | |
} | |
], | |
"stateMutability": "payable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountIn", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountOutMin", | |
"type": "uint256" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "address", | |
"name": "from", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
} | |
], | |
"internalType": "struct Router.route[]", | |
"name": "routes", | |
"type": "tuple[]" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "deadline", | |
"type": "uint256" | |
} | |
], | |
"name": "swapExactTokensForCANTO", | |
"outputs": [ | |
{ | |
"internalType": "uint256[]", | |
"name": "amounts", | |
"type": "uint256[]" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "amountIn", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountOutMin", | |
"type": "uint256" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "address", | |
"name": "from", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
} | |
], | |
"internalType": "struct Router.route[]", | |
"name": "routes", | |
"type": "tuple[]" | |
}, | |
{ | |
"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": "amountIn", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "amountOutMin", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenFrom", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "tokenTo", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "stable", | |
"type": "bool" | |
}, | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "deadline", | |
"type": "uint256" | |
} | |
], | |
"name": "swapExactTokensForTokensSimple", | |
"outputs": [ | |
{ | |
"internalType": "uint256[]", | |
"name": "amounts", | |
"type": "uint256[]" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "wcanto", | |
"outputs": [ | |
{ | |
"internalType": "contract IWCANTO", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"stateMutability": "payable", | |
"type": "receive" | |
} | |
] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment