0 txs
39 calls
constructor
constructor((address token0, address token1, address pool)[] pools)
functions
getPool
viewfunction getPool(address, address) view returns (address)
owner
viewfunction owner() view returns (address)
pendingOwner
viewfunction pendingOwner() view returns (address)
acceptOwnership
nonpayablefunction acceptOwnership()
addPools
nonpayablefunction addPools(tuple[] pools)
renounceOwnership
nonpayablefunction renounceOwnership()
swapExactInput
nonpayablefunction swapExactInput(address recipient, address tokenIn, address tokenOut, uint256 amountIn, uint256 minAmountOut, bytes data) returns (uint256 amountOut)
swapExactOutput
nonpayablefunction swapExactOutput(address recipient, address tokenIn, address tokenOut, uint256 maxAmountIn, uint256 amountOut, bytes data) returns (uint256 amountIn)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
NewPool
event NewPool(address indexed token0, address indexed token1, address indexed pool)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
errors
Forbidden
error Forbidden()
InsufficientAmount
error InsufficientAmount()
NotSupported
error NotSupported()
TooMuchRequested
error TooMuchRequested()
UnknownPool
error UnknownPool()
creation bytecode
0x60806040523480156200001157600080fd5b506040516200183e3803806200183e833981016040819052620000349162000245565b80620000403362000146565b6040805160608101825260008082526020820181905291810191909152815160005b818110156200013b5783818151811062000080576200008062000341565b6020908102919091018101516040808201805183516001600160a01b039081166000908152600280885285822087890180518516845290895286832080549585166001600160a01b031996871617905585518151851684529189528683208851851684529098528582208054918416919094161790925591519451845193519498509482169482169392909116917fd02da1bec30f7f750aa0a131745dfb9ce96767c45a192dc26409f5d690e0b9679190a460010162000062565b505050505062000357565b600180546001600160a01b0319169055620001618162000164565b50565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715620001ef57620001ef620001b4565b60405290565b604051601f8201601f191681016001600160401b0381118282101715620002205762000220620001b4565b604052919050565b80516001600160a01b03811681146200024057600080fd5b919050565b600060208083850312156200025957600080fd5b82516001600160401b03808211156200027157600080fd5b818501915085601f8301126200028657600080fd5b8151818111156200029b576200029b620001b4565b620002ab848260051b01620001f5565b81815284810192506060918202840185019188831115620002cb57600080fd5b938501935b82851015620003355780858a031215620002ea5760008081fd5b620002f4620001ca565b620002ff8662000228565b81526200030e87870162000228565b8782015260406200032181880162000228565b9082015284529384019392850192620002d0565b50979650505050505050565b634e487b7160e01b600052603260045260246000fd5b6114d780620003676000396000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c806379ba5097116100765780638da5cb5b1161005b5780638da5cb5b1461016c578063e30c39781461018a578063f2fde38b146101a857600080fd5b806379ba5097146101515780637d4f036a1461015957600080fd5b80632f1ccfbe146100a85780633fab9614146100ce578063531aa03e146100e3578063715018a614610149575b600080fd5b6100bb6100b636600461105f565b6101bb565b6040519081526020015b60405180910390f35b6100e16100dc36600461111d565b6103af565b005b6101246100f1366004611192565b600260209081526000928352604080842090915290825290205473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100c5565b6100e16104e4565b6100e161051e565b6100bb61016736600461105f565b6105d8565b60005473ffffffffffffffffffffffffffffffffffffffff16610124565b60015473ffffffffffffffffffffffffffffffffffffffff16610124565b6100e16101b63660046111cb565b610772565b6000806101c88888610822565b905060008873ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1663c661065760006040518263ffffffff1660e01b815260040161021f91815260200190565b6020604051808303816000875af115801561023e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061026291906111ef565b73ffffffffffffffffffffffffffffffffffffffff1614610284576001610287565b60005b6040517f1b9d082d0000000000000000000000000000000000000000000000000000000081529091503390631b9d082d906102cc9030908b908a908a9060040161120c565b600060405180830381600087803b1580156102e657600080fd5b505af11580156102fa573d6000803e3d6000fd5b50505050600061030e83308c858c8c610894565b90508681101561034a576040517f24df576f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610355898c89610976565b868103610367578793505050506103a4565b600061037388836112ac565b90506000610390858e8d6103888860016112bf565b866000610894565b905061039c818b6112ac565b955050505050505b979650505050505050565b6103b7610a4f565b60408051606081018252600080825260208201819052918101919091528160005b818110156104dd578484828181106103f2576103f261130d565b905060600201803603810190610408919061133c565b60408082018051835173ffffffffffffffffffffffffffffffffffffffff90811660009081526002602081815286832081890180518616855290825287842080549686167fffffffffffffffffffffffff00000000000000000000000000000000000000009788161790558651815186168552928252878420895186168552909152868320805492851692909516919091179093559251915185519451959850918116949181169316917fd02da1bec30f7f750aa0a131745dfb9ce96767c45a192dc26409f5d690e0b96791a46001016103d8565b5050505050565b6104ec610a4f565b6040517fee90c46800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600154339073ffffffffffffffffffffffffffffffffffffffff1681146105cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060448201527f6e6577206f776e6572000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6105d581610ad2565b50565b6000806105e58888610822565b905060008873ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1663c661065760006040518263ffffffff1660e01b815260040161063c91815260200190565b6020604051808303816000875af115801561065b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067f91906111ef565b73ffffffffffffffffffffffffffffffffffffffff16146106a15760016106a4565b60005b6040517f1b9d082d0000000000000000000000000000000000000000000000000000000081529091503390631b9d082d906106e99030908b908a908a9060040161120c565b600060405180830381600087803b15801561070357600080fd5b505af1158015610717573d6000803e3d6000fd5b50505050610729828b8b848b8b610894565b925085831015610765576040517f5945ea5600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050979650505050505050565b61077a610a4f565b6001805473ffffffffffffffffffffffffffffffffffffffff83167fffffffffffffffffffffffff000000000000000000000000000000000000000090911681179091556107dd60005473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b73ffffffffffffffffffffffffffffffffffffffff80831660009081526002602090815260408083208585168452909152902054168061088e576040517ff7139e3300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b92915050565b60006108a1858885610b03565b73ffffffffffffffffffffffffffffffffffffffff871663ddc1f59d856108c98160016112bf565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600f92830b6004820152910b6024820152604481018690526064810185905273ffffffffffffffffffffffffffffffffffffffff8916608482015260a4016020604051808303816000875af1158015610952573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a491906113d5565b60405173ffffffffffffffffffffffffffffffffffffffff8316602482015260448101829052610a4a9084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152610bf9565b505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610ad0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c3565b565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001690556105d581610d08565b6040805173ffffffffffffffffffffffffffffffffffffffff8416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f095ea7b300000000000000000000000000000000000000000000000000000000179052610b8f8482610d7d565b610bf35760405173ffffffffffffffffffffffffffffffffffffffff8416602482015260006044820152610be99085907f095ea7b300000000000000000000000000000000000000000000000000000000906064016109c8565b610bf38482610bf9565b50505050565b6000610c5b826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff16610e3e9092919063ffffffff16565b9050805160001480610c7c575080806020019051810190610c7c91906113ee565b610a4a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016105c3565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60008060008473ffffffffffffffffffffffffffffffffffffffff1684604051610da79190611434565b6000604051808303816000865af19150503d8060008114610de4576040519150601f19603f3d011682016040523d82523d6000602084013e610de9565b606091505b5091509150818015610e13575080511580610e13575080806020019051810190610e1391906113ee565b8015610e35575073ffffffffffffffffffffffffffffffffffffffff85163b15155b95945050505050565b6060610e4d8484600085610e55565b949350505050565b606082471015610ee7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016105c3565b6000808673ffffffffffffffffffffffffffffffffffffffff168587604051610f109190611434565b60006040518083038185875af1925050503d8060008114610f4d576040519150601f19603f3d011682016040523d82523d6000602084013e610f52565b606091505b50915091506103a48783838760608315610ff4578251600003610fed5773ffffffffffffffffffffffffffffffffffffffff85163b610fed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016105c3565b5081610e4d565b610e4d83838151156110095781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c39190611450565b73ffffffffffffffffffffffffffffffffffffffff811681146105d557600080fd5b600080600080600080600060c0888a03121561107a57600080fd5b87356110858161103d565b965060208801356110958161103d565b955060408801356110a58161103d565b9450606088013593506080880135925060a088013567ffffffffffffffff808211156110d057600080fd5b818a0191508a601f8301126110e457600080fd5b8135818111156110f357600080fd5b8b602082850101111561110557600080fd5b60208301945080935050505092959891949750929550565b6000806020838503121561113057600080fd5b823567ffffffffffffffff8082111561114857600080fd5b818501915085601f83011261115c57600080fd5b81358181111561116b57600080fd5b86602060608302850101111561118057600080fd5b60209290920196919550909350505050565b600080604083850312156111a557600080fd5b82356111b08161103d565b915060208301356111c08161103d565b809150509250929050565b6000602082840312156111dd57600080fd5b81356111e88161103d565b9392505050565b60006020828403121561120157600080fd5b81516111e88161103d565b73ffffffffffffffffffffffffffffffffffffffff8516815283602082015260606040820152816060820152818360808301376000818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561088e5761088e61127d565b600f82810b9082900b037fffffffffffffffffffffffffffffffff8000000000000000000000000000000081126f7fffffffffffffffffffffffffffffff8213171561088e5761088e61127d565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006060828403121561134e57600080fd5b6040516060810181811067ffffffffffffffff82111715611398577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405282356113a68161103d565b815260208301356113b68161103d565b602082015260408301356113c98161103d565b60408201529392505050565b6000602082840312156113e757600080fd5b5051919050565b60006020828403121561140057600080fd5b815180151581146111e857600080fd5b60005b8381101561142b578181015183820152602001611413565b50506000910152565b60008251611446818460208701611410565b9190910192915050565b602081526000825180602084015261146f816040850160208701611410565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fea2646970667358221220d255d714bc787aeea725cbdb98e69fd9fda87a1dc2c05d7d84ee8b5567f0044f64736f6c63430008130033000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000bbf664d46becc28593368c97236faa0fb39759500000000000000000000000012275dcb9048680c4be40942ea4d92c74c63b8440000000000000000000000006f33daf91d2acae10f5cd7bbe3f31716ed123f1d00000000000000000000000018c14c2d707b2212e17d1579789fc06010cfca2300000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab100000000000000000000000095f425c7d730eb7673fca272c2c305f48ed546c3