UNPKG

@ensuro/swaplibrary

Version:

Solidity Library that implements swap using different plaforms with a homogeneneous interface

1 lines 2.43 MB
{"_format":"hh3-sol-build-info-output-1","id":"solc-0_8_35-3c6720e352a8805a57f3d5d8111ba91dcd52bec9","output":{"contracts":{"npm/@openzeppelin/contracts@5.5.0/interfaces/IERC1363.sol":{"IERC1363":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approveAndCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"approveAndCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferAndCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"transferAndCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"transferFromAndCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFromAndCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","approveAndCall(address,uint256)":"3177029f","approveAndCall(address,uint256,bytes)":"cae9ca51","balanceOf(address)":"70a08231","supportsInterface(bytes4)":"01ffc9a7","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferAndCall(address,uint256)":"1296ee62","transferAndCall(address,uint256,bytes)":"4000aea0","transferFrom(address,address,uint256)":"23b872dd","transferFromAndCall(address,address,uint256)":"d8fbe994","transferFromAndCall(address,address,uint256,bytes)":"c1d34b89"}}}},"npm/@openzeppelin/contracts@5.5.0/interfaces/draft-IERC6093.sol":{"IERC1155Errors":{"abi":[{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ERC1155InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC1155InvalidApprover","type":"error"},{"inputs":[{"internalType":"uint256","name":"idsLength","type":"uint256"},{"internalType":"uint256","name":"valuesLength","type":"uint256"}],"name":"ERC1155InvalidArrayLength","type":"error"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"ERC1155InvalidOperator","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC1155InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC1155InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"ERC1155MissingApprovalForAll","type":"error"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{}}},"IERC20Errors":{"abi":[{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{}}},"IERC721Errors":{"abi":[{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"address","name":"owner","type":"address"}],"name":"ERC721IncorrectOwner","type":"error"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ERC721InsufficientApproval","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC721InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"ERC721InvalidOperator","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"ERC721InvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC721InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC721InvalidSender","type":"error"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ERC721NonexistentToken","type":"error"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{}}}},"npm/@openzeppelin/contracts@5.5.0/token/ERC20/ERC20.sol":{"ERC20":{"abi":[{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decimals()":"313ce567","name()":"06fdde03","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"}}}},"npm/@openzeppelin/contracts@5.5.0/token/ERC20/IERC20.sol":{"IERC20":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"}}}},"npm/@openzeppelin/contracts@5.5.0/token/ERC20/extensions/IERC20Metadata.sol":{"IERC20Metadata":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decimals()":"313ce567","name()":"06fdde03","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"}}}},"npm/@openzeppelin/contracts@5.5.0/token/ERC20/utils/SafeERC20.sol":{"SafeERC20":{"abi":[{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"currentAllowance","type":"uint256"},{"internalType":"uint256","name":"requestedDecrease","type":"uint256"}],"name":"SafeERC20FailedDecreaseAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"}],"evm":{"bytecode":{"linkReferences":{},"object":"60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f5ffdfea264697066735822122009648e35cc47f4f0dbb99a38b65133d4340759404d3a0c18d9af1976cec11f2564736f6c63430008230033","opcodes":"PUSH1 0x55 PUSH1 0x32 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH0 BYTE PUSH1 0x73 EQ PUSH1 0x26 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH0 MSTORE PUSH0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST ADDRESS PUSH0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 MULMOD PUSH5 0x8E35CC47F4 CREATE 0xDB 0xB9 SWAP11 CODESIZE 0xB6 MLOAD CALLER 0xD4 CALLVALUE SMOD MSIZE BLOCKHASH 0x4D GASPRICE 0xC XOR 0xD9 0xAF NOT PUSH23 0xCEC11F2564736F6C634300082300330000000000000000 ","sourceMap":"698:12615:7:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;698:12615:7;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"730000000000000000000000000000000000000000301460806040525f5ffdfea264697066735822122009648e35cc47f4f0dbb99a38b65133d4340759404d3a0c18d9af1976cec11f2564736f6c63430008230033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 MULMOD PUSH5 0x8E35CC47F4 CREATE 0xDB 0xB9 SWAP11 CODESIZE 0xB6 MLOAD CALLER 0xD4 CALLVALUE SMOD MSIZE BLOCKHASH 0x4D GASPRICE 0xC XOR 0xD9 0xAF NOT PUSH23 0xCEC11F2564736F6C634300082300330000000000000000 ","sourceMap":"698:12615:7:-:0;;;;;;;;"},"methodIdentifiers":{}}}},"npm/@openzeppelin/contracts@5.5.0/utils/Context.sol":{"Context":{"abi":[],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{}}}},"npm/@openzeppelin/contracts@5.5.0/utils/Panic.sol":{"Panic":{"abi":[],"evm":{"bytecode":{"linkReferences":{},"object":"60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f5ffdfea2646970667358221220178740ec846d829c53dc81931229ed7e78a814c1b2996314b73dd84b5df6962e64736f6c63430008230033","opcodes":"PUSH1 0x55 PUSH1 0x32 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH0 BYTE PUSH1 0x73 EQ PUSH1 0x26 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH0 MSTORE PUSH0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST ADDRESS PUSH0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 OR DUP8 BLOCKHASH EOFCREATE 0x84 PUSH14 0x829C53DC81931229ED7E78A814C1 0xB2 SWAP10 PUSH4 0x14B73DD8 0x4B TSTORE 0xF6 SWAP7 0x2E PUSH5 0x736F6C6343 STOP ADDMOD 0x23 STOP CALLER ","sourceMap":"657:1315:9:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;657:1315:9;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"730000000000000000000000000000000000000000301460806040525f5ffdfea2646970667358221220178740ec846d829c53dc81931229ed7e78a814c1b2996314b73dd84b5df6962e64736f6c63430008230033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 OR DUP8 BLOCKHASH EOFCREATE 0x84 PUSH14 0x829C53DC81931229ED7E78A814C1 0xB2 SWAP10 PUSH4 0x14B73DD8 0x4B TSTORE 0xF6 SWAP7 0x2E PUSH5 0x736F6C6343 STOP ADDMOD 0x23 STOP CALLER ","sourceMap":"657:1315:9:-:0;;;;;;;;"},"methodIdentifiers":{}}}},"npm/@openzeppelin/contracts@5.5.0/utils/introspection/IERC165.sol":{"IERC165":{"abi":[{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"supportsInterface(bytes4)":"01ffc9a7"}}}},"npm/@openzeppelin/contracts@5.5.0/utils/math/Math.sol":{"Math":{"abi":[],"evm":{"bytecode":{"linkReferences":{},"object":"60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f5ffdfea26469706673582212206e5a7fe9b525c570d99db3bb22df948abb9581dbf6b5cffe9e73222aee6652d264736f6c63430008230033","opcodes":"PUSH1 0x55 PUSH1 0x32 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH0 BYTE PUSH1 0x73 EQ PUSH1 0x26 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH0 MSTORE PUSH0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST ADDRESS PUSH0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH15 0x5A7FE9B525C570D99DB3BB22DF948A 0xBB SWAP6 DUP2 0xDB 0xF6 0xB5 0xCF INVALID SWAP15 PUSH20 0x222AEE6652D264736F6C63430008230033000000 ","sourceMap":"281:32081:11:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;281:32081:11;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"730000000000000000000000000000000000000000301460806040525f5ffdfea26469706673582212206e5a7fe9b525c570d99db3bb22df948abb9581dbf6b5cffe9e73222aee6652d264736f6c63430008230033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH15 0x5A7FE9B525C570D99DB3BB22DF948A 0xBB SWAP6 DUP2 0xDB 0xF6 0xB5 0xCF INVALID SWAP15 PUSH20 0x222AEE6652D264736F6C63430008230033000000 ","sourceMap":"281:32081:11:-:0;;;;;;;;"},"methodIdentifiers":{}}}},"npm/@openzeppelin/contracts@5.5.0/utils/math/SafeCast.sol":{"SafeCast":{"abi":[{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"int256","name":"value","type":"int256"}],"name":"SafeCastOverflowedIntDowncast","type":"error"},{"inputs":[{"internalType":"int256","name":"value","type":"int256"}],"name":"SafeCastOverflowedIntToUint","type":"error"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"SafeCastOverflowedUintDowncast","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"SafeCastOverflowedUintToInt","type":"error"}],"evm":{"bytecode":{"linkReferences":{},"object":"60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f5ffdfea26469706673582212209147120ed83732c64c7caeae42c4bf712d1f162f8608926554d5d36bd1e2a39064736f6c63430008230033","opcodes":"PUSH1 0x55 PUSH1 0x32 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH0 BYTE PUSH1 0x73 EQ PUSH1 0x26 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH0 MSTORE PUSH0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST ADDRESS PUSH0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SWAP2 SELFBALANCE SLT 0xE 0xD8 CALLDATACOPY ORIGIN 0xC6 0x4C PUSH29 0xAEAE42C4BF712D1F162F8608926554D5D36BD1E2A39064736F6C634300 ADDMOD 0x23 STOP CALLER ","sourceMap":"769:34173:12:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;769:34173:12;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"730000000000000000000000000000000000000000301460806040525f5ffdfea26469706673582212209147120ed83732c64c7caeae42c4bf712d1f162f8608926554d5d36bd1e2a39064736f6c63430008230033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SWAP2 SELFBALANCE SLT 0xE 0xD8 CALLDATACOPY ORIGIN 0xC6 0x4C PUSH29 0xAEAE42C4BF712D1F162F8608926554D5D36BD1E2A39064736F6C634300 ADDMOD 0x23 STOP CALLER ","sourceMap":"769:34173:12:-:0;;;;;;;;"},"methodIdentifiers":{}}}},"npm/@uniswap/v3-core@1.0.1/contracts/interfaces/callback/IUniswapV3SwapCallback.sol":{"IUniswapV3SwapCallback":{"abi":[{"inputs":[{"internalType":"int256","name":"amount0Delta","type":"int256"},{"internalType":"int256","name":"amount1Delta","type":"int256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"uniswapV3SwapCallback","outputs":[],"stateMutability":"nonpayable","type":"function"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"uniswapV3SwapCallback(int256,int256,bytes)":"fa461e33"}}}},"npm/@uniswap/v3-periphery@1.4.4/contracts/interfaces/ISwapRouter.sol":{"ISwapRouter":{"abi":[{"inputs":[{"components":[{"internalType":"bytes","name":"path","type":"bytes"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint256","name":"amountIn","type":"uint256"},{"internalType":"uint256","name":"amountOutMinimum","type":"uint256"}],"internalType":"struct ISwapRouter.ExactInputParams","name":"params","type":"tuple"}],"name":"exactInput","outputs":[{"internalType":"uint256","name":"amountOut","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"tokenIn","type":"address"},{"internalType":"address","name":"tokenOut","type":"address"},{"internalType":"uint24","name":"fee","type":"uint24"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint256","name":"amountIn","type":"uint256"},{"internalType":"uint256","name":"amountOutMinimum","type":"uint256"},{"internalType":"uint160","name":"sqrtPriceLimitX96","type":"uint160"}],"internalType":"struct ISwapRouter.ExactInputSingleParams","name":"params","type":"tuple"}],"name":"exactInputSingle","outputs":[{"internalType":"uint256","name":"amountOut","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"bytes","name":"path","type":"bytes"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint256","name":"amountOut","type":"uint256"},{"internalType":"uint256","name":"amountInMaximum","type":"uint256"}],"internalType":"struct ISwapRouter.ExactOutputParams","name":"params","type":"tuple"}],"name":"exactOutput","outputs":[{"internalType":"uint256","name":"amountIn","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"tokenIn","type":"address"},{"internalType":"address","name":"tokenOut","type":"address"},{"internalType":"uint24","name":"fee","type":"uint24"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint256","name":"amountOut","type":"uint256"},{"internalType":"uint256","name":"amountInMaximum","type":"uint256"},{"internalType":"uint160","name":"sqrtPriceLimitX96","type":"uint160"}],"internalType":"struct ISwapRouter.ExactOutputSingleParams","name":"params","type":"tuple"}],"name":"exactOutputSingle","outputs":[{"internalType":"uint256","name":"amountIn","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"int256","name":"amount0Delta","type":"int256"},{"internalType":"int256","name":"amount1Delta","type":"int256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"uniswapV3SwapCallback","outputs":[],"stateMutability":"nonpayable","type":"function"}],"evm":{"bytecode":{"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"methodIdentifiers":{"exactInput((bytes,address,uint256,uint256,uint256))":"c04b8d59","exactInputSingle((address,address,uint24,address,uint256,uint256,uint256,uint160))":"414bf389","exactOutput((bytes,address,uint256,uint256,uint256))":"f28c0498","exactOutputSingle((address,address,uint24,address,uint256,uint256,uint256,uint160))":"db3e2198","uniswapV3SwapCallback(int256,int256,bytes)":"fa461e33"}}}},"npm/solidity-bytes-utils@0.8.4/contracts/BytesLib.sol":{"BytesLib":{"abi":[],"evm":{"bytecode":{"linkReferences":{},"object":"60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f5ffdfea264697066735822122091f620385ccaba44776eadc989fa7158c47843fb703583f10b6e1441cc0eaeac64736f6c63430008230033","opcodes":"PUSH1 0x55 PUSH1 0x32 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH0 BYTE PUSH1 0x73 EQ PUSH1 0x26 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH0 MSTORE PUSH0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST ADDRESS PUSH0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SWAP2 0xF6 KECCAK256 CODESIZE TLOAD 0xCA 0xBA PREVRANDAO PUSH24 0x6EADC989FA7158C47843FB703583F10B6E1441CC0EAEAC64 PUSH20 0x6F6C634300082300330000000000000000000000 ","sourceMap":"370:19069:15:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;370:19069:15;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"730000000000000000000000000000000000000000301460806040525f5ffdfea264697066735822122091f620385ccaba44776eadc989fa7158c47843fb703583f10b6e1441cc0eaeac64736f6c63430008230033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SWAP2 0xF6 KECCAK256 CODESIZE TLOAD 0xCA 0xBA PREVRANDAO PUSH24 0x6EADC989FA7158C47843FB703583F10B6E1441CC0EAEAC64 PUSH20 0x6F6C634300082300330000000000000000000000 ","sourceMap":"370:19069:15:-:0;;;;;;;;"},"methodIdentifiers":{}}}},"project/contracts/CurveRoutes.sol":{"CurveRoutes":{"abi":[{"inputs":[],"name":"AtLeastOneRoute","type":"error"},{"inputs":[],"name":"CurveRouterCantBeZero","type":"error"},{"inputs":[],"name":"InvalidLength","type":"error"},{"inputs":[{"components":[{"internalType":"address[11]","name":"route","type":"address[11]"},{"internalType":"uint256[5][5]","name":"swapParams","type":"uint256[5][5]"},{"internalType":"address[5]","name":"pools","type":"address[5]"}],"internalType":"struct CurveRoutes.CurveRoute","name":"route","type":"tuple"}],"name":"InvalidRoute","type":"error"},{"inputs":[{"internalType":"address","name":"tokenIn","type":"address"},{"internalType":"address","name":"tokenOut","type":"address"}],"name":"RouteNotFound","type":"error"},{"inputs":[{"internalType":"uint8","name":"nSwaps","type":"uint8"}],"name":"TooManySwaps","type":"error"}],"evm":{"bytecode":{"linkReferences":{},"object":"60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f5ffdfea2646970667358221220b769a51117827d89715cdd25c1709f6e7ad04585d58fbd3eeef2c0a227f200f664736f6c63430008230033","opcodes":"PUSH1 0x55 PUSH1 0x32 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH0 BYTE PUSH1 0x73 EQ PUSH1 0x26 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH0 MSTORE PUSH0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST ADDRESS PUSH0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB7 PUSH10 0xA51117827D89715CDD25 0xC1 PUSH17 0x9F6E7AD04585D58FBD3EEEF2C0A227F200 0xF6 PUSH5 0x736F6C6343 STOP ADDMOD 0x23 STOP CALLER ","sourceMap":"839:4055:16:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;839:4055:16;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"immutableReferences":{},"linkReferences":{},"object":"730000000000000000000000000000000000000000301460806040525f5ffdfea2646970667358221220b769a51117827d89715cdd25c1709f6e7ad04585d58fbd3eeef2c0a227f200f664736f6c63430008230033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH0 PUSH0 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB7 PUSH10 0xA51117827D89715CDD25 0xC1 PUSH17 0x9F6E7AD04585D58FBD3EEEF2C0A227F200 0xF6 PUSH5 0x736F6C6343 STOP ADDMOD 0x23 STOP CALLER ","sourceMap":"839:4055:16:-:0;;;;;;;;"},"methodIdentifiers":{}}}},"project/contracts/P2PSwapRouter.sol":{"P2PSwapRouter":{"abi":[{"inputs":[{"internalType":"address","name":"onBehalfOf_","type":"address"},{"internalType":"address","name":"swapper_","type":"address"},{"internalType":"address","name":"pricer_","type":"address"},{"components":[{"internalType":"address","name":"tokenIn","type":"address"},{"internalType":"address","name":"tokenOut","type":"address"},{"internalType":"uint256","name":"price","type":"uint256"}],"internalType":"struct P2PSwapRouter.Price[]","name":"initialPrices","type":"tuple[]"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AmountCannotBeZero","type":"error"},{"inputs":[],"name":"DeadlineInThePast","type":"error"},{"inputs":[{"internalType":"uint256","name":"amountIn","type":"uint256"},{"internalType":"uint256","name":"amountInMaximum","type":"uint256"}],"name":"InputAmountExceedsSlippage","type":"error"},{"inputs":[],"name":"NotImplemented","type":"error"},{"inputs":[{"internalType":"address","name":"caller","type":"address"}],"name":"OnlyPricerCanChangePrice","type":"error"},{"inputs":[{"internalType":"address","name":"caller","type":"address"}],"name":"OnlySwapperCanSwap","type":"error"},{"inputs":[{"internalType":"uint256","name":"amountOut","type":"uint256"},{"internalType":"uint256","name":"amountOutMinimum","type":"uint256"}],"name":"OutputAmountLessThanSlippage","type":"error"},{"inputs":[],"name":"RecipientCannotBeZero","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"},{"inputs":[],"name":"TokenCannotBeZero","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"tokenIn","type":"address"},{"indexed":true,"internalType":"address","name":"tokenOut","type":"address"},{"indexed":false,"internalType":"uint256","name":"price","type":"uint256"}],"name":"PriceUpdated","type":"event"},{"inputs":[{"components":[{"internalType":"bytes","name":"path","type":"bytes"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint256","name":"amountIn","type":"uint256"},{"internalType":"uint256","name":"amountOutMinimum","type":"uint256"}],"internalType":"struct ISwapRouter.ExactInputParams","name":"","type":"tuple"}],"name":"exactInput","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"tokenIn","type":"address"},{"internalType":"address","name":"tokenOut","type":"address"},{"internalType":"uint24","name":"fee","type":"uint24"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint256","name":"amountIn","type":"uint256"},{"internalType":"uint256","name":"amountOutMinimum","type":"uint256"},{"internalType":"uint160","name":"sqrtPriceLimitX96","type":"uint160"}],"internalType":"struct ISwapRouter.ExactInputSingleParams","name":"params","type":"tuple"}],"name":"exactInputSingle","outputs":[{"internalType":"uint256","name":"amountOut","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"bytes","name":"path","type":"bytes"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint256","name":"amountOut","type":"uint256"},{"internalType":"uint256","name":"amountInMaximum","type":"uint256"}],"internalType":"struct ISwapRouter.ExactOutputParams","name":"","type":"tuple"}],"name":"exactOutput","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"tokenIn","type":"address"},{"internalType":"address","name":"tokenOut","type":"address"},{"internalType":"uint24","name":"fee","type":"uint24"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint256","name":"amountOut","type":"uint256"},{"internalType":"uint256","name":"amountInMaximum","type":"uint256"},{"internalType":"uint160","name":"sqrtPriceLimitX96","type":"uint160"}],"internalType":"struct ISwapRouter.ExactOutputSingleParams","name":"params","type":"tuple"}],"name":"exactOutputSingle","outputs":[{"internalType":"uint256","name":"amountIn","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenIn","type":"address"},{"internalType":"address","name":"tokenOut","type":"address"}],"name":"getCurrentPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"onBehalfOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pricer","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenIn","type":"address"},{"internalType":"address","name":"tokenOut","type":"address"},{"internalType":"uint256","name":"price_","type":"uint256"}],"name":"setCurrentPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapper","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"int256","name":"","type":"int256"},{"internalType":"int256","name":"","type":"int256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"uniswapV3SwapCallback","outputs":[],"stateMutability":"pure","type":"function"}],"evm":{"bytecode":{"linkReferences":{},"object":"60e060405234801561000f575f5ffd5b5060405161104738038061104783398101604081905261002e916101d1565b6001600160a01b0380841660a05282811660c05284166080525f5b8151811015610094575f828281518110610065576100656102ec565b6020026020010151905061008b815f01518260200151836040015161009e60201b60201c565b50600101610049565b5050505050610300565b6001600160a01b0383166100c55760405163165a825360e21b815260040160405180910390fd5b6001600160a01b0382166100ec5760405163165a825360e21b815260040160405180910390fd5b6001600160a01b038381165f818152602081815260408083209487168084529482529182902085905590518481527fb71c154260e8508e211e2ace194becba2c6d7e727c3ed292fe4787458969cd10910160405180910390a3505050565b80516001600160a01b0381168114610160575f5ffd5b919050565b634e487b7160e01b5f52604160045260245ffd5b604051606081016001600160401b038111828210171561019b5761019b610165565b60405290565b604051601f8201601f191681016001600160401b03811182821017156101c9576101c9610165565b604052919050565b5f5f5f5f608085870312156101e4575f5ffd5b6101ed8561014a565b93506101fb6020860161014a565b92506102096040860161014a565b60608601519092506001600160401b03811115610224575f5ffd5b8501601f81018713610234575f5ffd5b80516001600160401b0381111561024d5761024d610165565b61025c60208260051b016101a1565b8082825260208201915060206060840285010192508983111561027d575f5ffd5b6020840193505b828410156102de576060848b03121561029b575f5ffd5b6102a3610179565b6102ac8561014a565b81526102ba6020860161014a565b60208201526040850151604082015280835250602082019150606084019350610284565b969995985093965050505050565b634e487b7160e01b5f52603260045260245ffd5b60805160a05160c051610cf56103525f395f8181610169015261081601525f818160f4015261065901525f818160a40152818161036e015281816103b5015281816105bf01526105f10152610cf55ff3fe60806040526004361061008f575f3560e01c8063c04b8d5911610057578063c04b8d591461018b578063db16a5551461019e578063db3e2198146101bd578063f28c04981461018b578063fa461e33146101d0575f5ffd5b80631dc3af35146100935780632b3297f9146100e3578063414bf389146101165780634562e01514610137578063a6138ed914610158575b5f5ffd5b34801561009e575f5ffd5b506100c67f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156100ee575f5ffd5b506100c67f000000000000000000000000000000000000000000000000000000000000000081565b6101296101243660046109b8565b6101ef565b6040519081526020016100da565b348015610142575f5ffd5b506101566101513660046109ee565b6103fb565b005b348015610163575f5ffd5b506100c67f000000000000000000000000000000000000000000000000000000000000000081565b610129610199366004610a37565b610413565b3480156101a9575f5ffd5b506101296101b8366004610a71565b61042d565b6101296101cb3660046109b8565b610457565b3480156101db575f5ffd5b506101566101ea366004610aa2565b610635565b5f6101f861064e565b5f6102096080840160608501610b1e565b6001600160a01b03160361022f5760405162e18e7f60e71b815260040160405180910390fd5b4282608001351015610257576040516001623859e760e21b0319815260040160405180910390fd5b5f8260a001351161027b5760405163d11b25af60e01b815260040160405180910390fd5b5f61030f670de0b6b3a764000082806102976020880188610b1e565b6001600160a01b03166001600160a01b031681526020019081526020015f205f8660200160208101906102ca9190610b1e565b6001600160a01b031681526020808201929092526040015f2054906102fa906102f590880188610b1e565b6106a7565b6103089060a0880135610b4b565b919061071e565b90506103246102f56040850160208601610b1e565b61032e9082610b76565b91508160c0840135808210156103655760405163296ba6e160e01b8152600481019290925260248201526044015b60405180910390fd5b506103b09050337f000000000000000000000000000000000000000000000000000000000000000060a086013561039f6020880188610b1e565b6001600160a01b03169291906107cf565b6103f57f00000000000000000000000000000000000000000000000000000000000000006103e46080860160608701610b1e565b8461039f6040880160208901610b1e565b50919050565b61040361080b565b61040e838383610861565b505050565b5f60405163d623472560e01b815260040160405180910390fd5b6001600160a01b038083165f90815260208181526040808320938516835292905220545b92915050565b5f61046061064e565b5f6104716080840160608501610b1e565b6001600160a01b0316036104975760405162e18e7f60e71b815260040160405180910390fd5b42826080013510156104bf576040516001623859e760e21b0319815260040160405180910390fd5b5f8260a00135116104e35760405163d11b25af60e01b815260040160405180910390fd5b5f61056881806104f66020870187610b1e565b6001600160a01b03166001600160a01b031681526020019081526020015f205f8560200160208101906105299190610b1e565b6001600160a01b03166001600160a01b031681526020019081526020015f2054670de0b6b3a76400006102fa8660200160208101906102f59190610b1e565b905061057a6102f56020850185610b1e565b6105849082610b76565b91508160c0840135808211156105b657604051639a06025d60e01b81526004810192909252602482015260440161035c565b506105ec9050337f00000000000000000000000000000000000000000000000000000000000000008461039f6020880188610b1e565b6103f57f00000000000000000000000000000000000000000000000000000000000000006106206080860160608701610b1e565b60a086013561039f6040880160208901610b1e565b60405163d623472560e01b815260040160405180910390fd5b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681146106a45760405163275b1d0960e21b81526001600160a01b03909116600482015260240161035c565b50565b5f816001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107089190610b95565b610713906012610bb5565b61045190600a610cb1565b5f5f5f61072b868661090d565b91509150815f0361074f5783818161074557610745610b62565b04925050506107c8565b818411610766576107666003851502601118610929565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010185841190960395909502919093039390930492909217029150505b9392505050565b6107dd84848484600161093a565b61080557604051635274afe760e01b81526001600160a01b038516600482015260240161035c565b50505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681146106a45760405163f30e2dd160e01b81526001600160a01b03909116600482015260240161035c565b6001600160a01b0383166108885760405163165a825360e21b815260040160405180910390fd5b6001600160a01b0382166108af5760405163165a825360e21b815260040160405180910390fd5b6001600160a01b038381165f818152602081815260408083209487168084529482529182902085905590518481527fb71c154260e8508e211e2ace194becba2c6d7e727c3ed292fe4787458969cd10910160405180910390a3505050565b5f805f1983850993909202808410938190039390930393915050565b634e487b715f52806020526024601cfd5b6040516323b872dd60e01b5f8181526001600160a01b038781166004528616602452604485905291602083606481808c5af1925060015f5114831661099657838315161561098a573d5f823e3d81fd5b5f883b113d1516831692505b604052505f60605295945050505050565b5f61010082840312156103f5575f5ffd5b5f61010082840312156109c9575f5ffd5b6107c883836109a7565b80356001600160a01b03811681146109e9575f5ffd5b919050565b5f5f5f60608486031215610a00575f5ffd5b610a09846109d3565b9250610a17602085016109d3565b9150604084013590509250925092565b5f60a082840312156103f5575f5ffd5b5f60208284031215610a47575f5ffd5b813567ffffffffffffffff811115610a5d575f5ffd5b610a6984828501610a27565b949350505050565b5f5f60408385031215610a82575f5ffd5b610a8b836109d3565b9150610a99602084016109d3565b90509250929050565b5f5f5f5f60608587031215610ab5575f5ffd5b8435935060208501359250604085013567ffffffffffffffff811115610ad9575f5ffd5b8501601f81018713610ae9575f5ffd5b803567ffffffffffffffff811115610aff575f5ffd5b876020828401011115610b10575f5ffd5b949793965060200194505050565b5f60208284031215610b2e575f5ffd5b6107c8826109d3565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761045157610451610b37565b634e487b7160e01b5f52601260045260245ffd5b5f82610b9057634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610ba5575f5ffd5b815160ff811681146107c8575f5ffd5b60ff828116828216039081111561045157610451610b37565b6001815b6001841115610c0957808504811115610bed57610bed610b37565b6001841615610bfb57908102905b60019390931c928002610bd2565b935093915050565b5f82610c1f57506001610451565b81610c2b57505f610451565b8160018114610c415760028114610c4b57610c67565b6001915050610451565b60ff841115610c5c57610c5c610b37565b50506001821b610451565b5060208310610133831016604e8410600b8410161715610c8a575081810a610451565b610c965f198484610bce565b805f1904821115610ca957610ca9610b37565b029392505050565b5f6107c860ff841683610c1156fea264697066735822122097a97471a893b688c2faa3e4b8cc1af2fad37d0aeae2a2d250b91d9b0f5afd3d64736f6c63430008230033","opcodes":"PUSH1 0xE0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0xF JUMPI PUSH0 PUSH0 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x1047 CODESIZE SUB DUP1 PUSH2 0x1047 DUP4 CODECOPY D