[ { "inputs": [], "name": "DeadlineCrossed", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "have", "type": "uint256" }, { "internalType": "uint256", "name": "want", "type": "uint256" } ], "name": "InvalidMsgValue", "type": "error" }, { "inputs": [], "name": "InvalidRecipient", "type": "error" }, { "inputs": [], "name": "InvalidRoute", "type": "error" }, { "inputs": [], "name": "LeakyRoute", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "have", "type": "uint256" }, { "internalType": "uint256", "name": "want", "type": "uint256" } ], "name": "MaxInputAmountExceeded", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "have", "type": "uint256" }, { "internalType": "uint256", "name": "want", "type": "uint256" } ], "name": "MinOutputAmountNotReached", "type": "error" }, { "inputs": [], "name": "NoExternallyInitiatedCallbacks", "type": "error" }, { "inputs": [], "name": "NoNativeInputWithPermit", "type": "error" }, { "inputs": [], "name": "NoValueDonations", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "pool", "type": "address" } ], "name": "NotAFactoryPool", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "uint256", "name": "impactPips", "type": "uint256" } ], "name": "QuoteReturn", "type": "error" }, { "inputs": [], "name": "ReentrancyGuardReentrantCall", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" } ], "name": "SafeERC20FailedOperation", "type": "error" }, { "inputs": [], "name": "ZeroSwapAmount", "type": "error" }, { "inputs": [], "name": "ZeroSwapInput", "type": "error" }, { "inputs": [], "name": "ZeroSwapOutput", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "impactPips", "type": "uint256" }, { "components": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "minOutputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "bool", "name": "unwrap", "type": "bool" }, { "components": [ { "internalType": "enum PoolType", "name": "poolType", "type": "uint8" }, { "internalType": "address", "name": "pool", "type": "address" }, { "internalType": "address", "name": "inputToken", "type": "address" }, { "internalType": "address", "name": "outputToken", "type": "address" }, { "internalType": "uint24", "name": "feePips", "type": "uint24" }, { "internalType": "uint8", "name": "inputPercentage", "type": "uint8" }, { "internalType": "uint8", "name": "outputPercentage", "type": "uint8" } ], "internalType": "struct SwapParams[]", "name": "route", "type": "tuple[]" } ], "indexed": false, "internalType": "struct ExactInputParams", "name": "params", "type": "tuple" } ], "name": "ExactInputExecuted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "impactPips", "type": "uint256" }, { "components": [ { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "maxInputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "bool", "name": "unwrap", "type": "bool" }, { "components": [ { "internalType": "enum PoolType", "name": "poolType", "type": "uint8" }, { "internalType": "address", "name": "pool", "type": "address" }, { "internalType": "address", "name": "inputToken", "type": "address" }, { "internalType": "address", "name": "outputToken", "type": "address" }, { "internalType": "uint24", "name": "feePips", "type": "uint24" }, { "internalType": "uint8", "name": "inputPercentage", "type": "uint8" }, { "internalType": "uint8", "name": "outputPercentage", "type": "uint8" } ], "internalType": "struct SwapParams[]", "name": "route", "type": "tuple[]" } ], "indexed": false, "internalType": "struct ExactOutputParams", "name": "params", "type": "tuple" } ], "name": "ExactOutputExecuted", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "amount0Out", "type": "uint256" }, { "internalType": "uint256", "name": "amount1Out", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "dragonswapCall", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "int256", "name": "amount0", "type": "int256" }, { "internalType": "int256", "name": "amount1", "type": "int256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "dragonswapV2SwapCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "minOutputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "bool", "name": "unwrap", "type": "bool" }, { "components": [ { "internalType": "enum PoolType", "name": "poolType", "type": "uint8" }, { "internalType": "address", "name": "pool", "type": "address" }, { "internalType": "address", "name": "inputToken", "type": "address" }, { "internalType": "address", "name": "outputToken", "type": "address" }, { "internalType": "uint24", "name": "feePips", "type": "uint24" }, { "internalType": "uint8", "name": "inputPercentage", "type": "uint8" }, { "internalType": "uint8", "name": "outputPercentage", "type": "uint8" } ], "internalType": "struct SwapParams[]", "name": "route", "type": "tuple[]" } ], "internalType": "struct ExactInputParams", "name": "params", "type": "tuple" } ], "name": "exactInput", "outputs": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "impactPips", "type": "uint256" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "signer", "type": "address" }, { "internalType": "uint256", "name": "nonce", "type": "uint256" }, { "internalType": "bytes", "name": "signature", "type": "bytes" }, { "components": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "minOutputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "bool", "name": "unwrap", "type": "bool" }, { "components": [ { "internalType": "enum PoolType", "name": "poolType", "type": "uint8" }, { "internalType": "address", "name": "pool", "type": "address" }, { "internalType": "address", "name": "inputToken", "type": "address" }, { "internalType": "address", "name": "outputToken", "type": "address" }, { "internalType": "uint24", "name": "feePips", "type": "uint24" }, { "internalType": "uint8", "name": "inputPercentage", "type": "uint8" }, { "internalType": "uint8", "name": "outputPercentage", "type": "uint8" } ], "internalType": "struct SwapParams[]", "name": "route", "type": "tuple[]" } ], "internalType": "struct ExactInputParams", "name": "params", "type": "tuple" } ], "name": "exactInputWithPermit", "outputs": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "impactPips", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "maxInputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "bool", "name": "unwrap", "type": "bool" }, { "components": [ { "internalType": "enum PoolType", "name": "poolType", "type": "uint8" }, { "internalType": "address", "name": "pool", "type": "address" }, { "internalType": "address", "name": "inputToken", "type": "address" }, { "internalType": "address", "name": "outputToken", "type": "address" }, { "internalType": "uint24", "name": "feePips", "type": "uint24" }, { "internalType": "uint8", "name": "inputPercentage", "type": "uint8" }, { "internalType": "uint8", "name": "outputPercentage", "type": "uint8" } ], "internalType": "struct SwapParams[]", "name": "route", "type": "tuple[]" } ], "internalType": "struct ExactOutputParams", "name": "params", "type": "tuple" } ], "name": "exactOutput", "outputs": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "impactPips", "type": "uint256" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "signer", "type": "address" }, { "internalType": "uint256", "name": "nonce", "type": "uint256" }, { "internalType": "bytes", "name": "signature", "type": "bytes" }, { "components": [ { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "maxInputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "bool", "name": "unwrap", "type": "bool" }, { "components": [ { "internalType": "enum PoolType", "name": "poolType", "type": "uint8" }, { "internalType": "address", "name": "pool", "type": "address" }, { "internalType": "address", "name": "inputToken", "type": "address" }, { "internalType": "address", "name": "outputToken", "type": "address" }, { "internalType": "uint24", "name": "feePips", "type": "uint24" }, { "internalType": "uint8", "name": "inputPercentage", "type": "uint8" }, { "internalType": "uint8", "name": "outputPercentage", "type": "uint8" } ], "internalType": "struct SwapParams[]", "name": "route", "type": "tuple[]" } ], "internalType": "struct ExactOutputParams", "name": "params", "type": "tuple" } ], "name": "exactOutputWithPermit", "outputs": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "impactPips", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "minOutputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "bool", "name": "unwrap", "type": "bool" }, { "components": [ { "internalType": "enum PoolType", "name": "poolType", "type": "uint8" }, { "internalType": "address", "name": "pool", "type": "address" }, { "internalType": "address", "name": "inputToken", "type": "address" }, { "internalType": "address", "name": "outputToken", "type": "address" }, { "internalType": "uint24", "name": "feePips", "type": "uint24" }, { "internalType": "uint8", "name": "inputPercentage", "type": "uint8" }, { "internalType": "uint8", "name": "outputPercentage", "type": "uint8" } ], "internalType": "struct SwapParams[]", "name": "route", "type": "tuple[]" } ], "internalType": "struct ExactInputParams", "name": "params", "type": "tuple" } ], "name": "quoteExactInput", "outputs": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "impactPips", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "maxInputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "bool", "name": "unwrap", "type": "bool" }, { "components": [ { "internalType": "enum PoolType", "name": "poolType", "type": "uint8" }, { "internalType": "address", "name": "pool", "type": "address" }, { "internalType": "address", "name": "inputToken", "type": "address" }, { "internalType": "address", "name": "outputToken", "type": "address" }, { "internalType": "uint24", "name": "feePips", "type": "uint24" }, { "internalType": "uint8", "name": "inputPercentage", "type": "uint8" }, { "internalType": "uint8", "name": "outputPercentage", "type": "uint8" } ], "internalType": "struct SwapParams[]", "name": "route", "type": "tuple[]" } ], "internalType": "struct ExactOutputParams", "name": "params", "type": "tuple" } ], "name": "quoteExactOutput", "outputs": [ { "internalType": "uint256", "name": "inputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "outputAmount", "type": "uint256" }, { "internalType": "uint256", "name": "impactPips", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" } ], "name": "rescueTokens", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]