0 txs
0 calls
constructor
constructor(address ocean_, address primitive_)
functions
decimals
viewfunction decimals(uint256) view returns (uint8)
getTokenSupply
viewfunction getTokenSupply(uint256 tokenId) view returns (uint256)
ocean
viewfunction ocean() view returns (address)
onERC1155Received
purefunction onERC1155Received(address, address, uint256, uint256, bytes) pure returns (bytes4)
onERC721Received
purefunction onERC721Received(address, address, uint256, bytes) pure returns (bytes4)
owner
viewfunction owner() view returns (address)
pools
viewfunction pools(uint256, uint256) view returns (address)
primitive
viewfunction primitive() view returns (address)
underlying
viewfunction underlying(uint256) view returns (address)
addPools
nonpayablefunction addPools(address[] pools_)
computeInputAmount
nonpayablefunction computeInputAmount(uint256 inputToken, uint256 outputToken, uint256 outputAmount, address userAddress, bytes32 maximumInputAmount) returns (uint256 inputAmount)
computeOutputAmount
nonpayablefunction computeOutputAmount(uint256 inputToken, uint256 outputToken, uint256 inputAmount, address, bytes32 metadata) returns (uint256 outputAmount)
renounceOwnership
nonpayablefunction renounceOwnership()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
uniswapV3SwapCallback
nonpayablefunction uniswapV3SwapCallback(int256 _amount0Delta, int256 _amount1Delta, bytes _data)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Swap
event Swap(uint256 inputToken, uint256 inputAmount, uint256 outputAmount, bytes32 slippageProtection, address user, bool computeOutput)
errors
POOL_NOT_FOUND
error POOL_NOT_FOUND()
SLIPPAGE_LIMIT_EXCEEDED
error SLIPPAGE_LIMIT_EXCEEDED()
creation bytecode
0x60c0346100eb57601f61199b38819003918201601f19168301916001600160401b038311848410176100f05780849260409485528339810103126100eb57610052602061004b83610106565b9201610106565b60809190915260a05260028054336001600160a01b03198216811790925560405191906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3611880908161011b8239608051818181610467015281816108f301528181610a9501528181610bcc01528181610c3d0152818161105301526117b6015260a051816109780152f35b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b03821682036100eb5756fe608080604052600436101561001d575b50361561001b57600080fd5b005b60003560e01c908163150b7a02146113955750806319b88edb146113795780633f47e6621461134a5780633fc20d4f14610a6c578063715018a6146109ec5780637450e2de1461099c5780637e7701e31461094b5780638da5cb5b14610917578063a6ec335f146108c6578063b36a4ab114610492578063e92ebd3a1461043d578063f23a6e6114610341578063f2fde38b1461022a578063f8fdeb68146101e85763fa461e33146100cf573861000f565b346101a15760606003193601126101a15760043560443567ffffffffffffffff81116101a157610103903690600401611448565b919073ffffffffffffffffffffffffffffffffffffffff92836004541633036101a15781602091810103126101a157359182168092036101a157600091602091838112156101e0575060446024355b60405194859384927fa9059cbb00000000000000000000000000000000000000000000000000000000845233600485015260248401525af19081156101d4576000916101a6575b50156101a157005b600080fd5b6101c7915060203d81116101cd575b6101bf81836114ed565b810190611759565b38610199565b503d6101b5565b6040513d6000823e3d90fd5b604490610152565b346101a15760206003193601126101a1576004356000526000602052602073ffffffffffffffffffffffffffffffffffffffff60406000205416604051908152f35b346101a15760206003193601126101a157610243611402565b61024b61152e565b73ffffffffffffffffffffffffffffffffffffffff8091169081156102bd57600254827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600255167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3005b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152fd5b346101a15760a06003193601126101a15761035a611402565b50610363611425565b5067ffffffffffffffff6084358181116101a157366023820112156101a157806004013591821161040e57604051916103c460207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601846114ed565b80835236602482840101116101a157600092816024602094018483013701015260206040517ff23a6e61000000000000000000000000000000000000000000000000000000008152f35b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b346101a15761044b36611476565b505050505073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633036101a157600080fd5b346101a15760206003193601126101a15767ffffffffffffffff6004358181116101a157366023820112156101a157806004013591821161040e578160051b90604051926104e360208401856114ed565b835260246020840192820101903682116101a157602401915b818310610899578361050c61152e565b60005b815181101561001b5773ffffffffffffffffffffffffffffffffffffffff60208260051b840101511690604051917f0dfe1681000000000000000000000000000000000000000000000000000000008352602083600481845afa9283156101d457600093610878575b50604051927fd21220a7000000000000000000000000000000000000000000000000000000008452602084600481855afa9384156101d457600094610847575b506105c2816115f2565b906105cc856115f2565b9082600052600060205260046020604060002073ffffffffffffffffffffffffffffffffffffffff841690817fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055604051928380927f313ce5670000000000000000000000000000000000000000000000000000000082525afa9182156101d45761069f928692600091610828575b5085600052600160205260ff604060002091167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00825416179055611771565b80600052600060205260046020604060002073ffffffffffffffffffffffffffffffffffffffff881690817fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055604051928380927f313ce5670000000000000000000000000000000000000000000000000000000082525afa9081156101d4576001966107739286926000916107f9575b50846000528860205260ff604060002091167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00825416179055611771565b81600052600390816020526040600020906000526020526040600020837fffffffffffffffffffffffff00000000000000000000000000000000000000008254161790556020526040600020906000526020526040600020907fffffffffffffffffffffffff00000000000000000000000000000000000000008254161790550161050f565b61081b915060203d602011610821575b61081381836114ed565b8101906115d9565b8a610735565b503d610809565b610841915060203d6020116108215761081381836114ed565b8a610660565b61086a91945060203d602011610871575b61086281836114ed565b8101906115ad565b92856105b8565b503d610858565b61089291935060203d6020116108715761086281836114ed565b9184610578565b823573ffffffffffffffffffffffffffffffffffffffff811681036101a1578152602092830192016104fc565b346101a15760006003193601126101a157602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101a15760006003193601126101a157602073ffffffffffffffffffffffffffffffffffffffff60025416604051908152f35b346101a15760006003193601126101a157602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101a15760406003193601126101a15760043560005260036020526040600020602435600052602052602073ffffffffffffffffffffffffffffffffffffffff60406000205416604051908152f35b346101a15760006003193601126101a157610a0561152e565b600073ffffffffffffffffffffffffffffffffffffffff6002547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600255167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b346101a157610a7a36611476565b9291905073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633036101a157836000526000602052610bb160807f010000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff60406000205416176040516020810191825260208152610b1e816114d1565b519051906020811061131a575b5060405190610b39826114b5565b81526000602082018181526040808401838152606085018881528686019490945290517f739653ba0000000000000000000000000000000000000000000000000000000081528451600482015291516024830152516044820152905160648201526080909101516084820152918290819060a4820190565b0381600073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af180156101d4576112fa575b506040517f8fec800900000000000000000000000000000000000000000000000000000000815260208160048173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa80156101d4576000906112c6575b610c7891508261166e565b846000526001602052610c9d60ff60406000205416610c978385611678565b90611693565b9050810180911161114e57610cb191611678565b83600052600360205260406000208260005260205273ffffffffffffffffffffffffffffffffffffffff60406000205416807fffffffffffffffffffffffff00000000000000000000000000000000000000006004541617600455801561129c5784600052600060205273ffffffffffffffffffffffffffffffffffffffff60406000205416604051917f0dfe1681000000000000000000000000000000000000000000000000000000008352602083600481845afa9283156101d45760009361127b575b50866000526001602052610d928460ff60406000205416611693565b509073ffffffffffffffffffffffffffffffffffffffff84168303611273576001915b73ffffffffffffffffffffffffffffffffffffffff8516840361125857916401000276a45b73ffffffffffffffffffffffffffffffffffffffff6040519186602084015260208352610e06836114d1565b6040519586947f128acb0800000000000000000000000000000000000000000000000000000000865230600487015215156024860152604485015216606483015260a060848301528051908160a484015260005b8281106112405750509181600060c4827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f88858560409b86010152011681010301925af19182156101d457600091600093611205575b5085600052600160205273ffffffffffffffffffffffffffffffffffffffff60ff604060002054169416146000146111f55750610eee9061172c565b905b601281036111175750925b8381116110ed57611038947f976ffbca84869d39bddd7057048dffc33e97641e3c7fe06fd7fc2b039c17b6e59260c09273ffffffffffffffffffffffffffffffffffffffff6004541691604051938452602084015286604084015260608301526080820152600160a0820152a16000526000602052608073ffffffffffffffffffffffffffffffffffffffff604060002054166040516020810191825260208152610fa5816114d1565b51905190602081106110bd575b5060405190610fc0826114b5565b81526000602082018181526040808401838152606085018781528686019490945290517f739653ba0000000000000000000000000000000000000000000000000000000081528451600482015291516024830152516044820152905160648201526080909101516084820152928390819060a4820190565b0381600073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165af19182156101d45760209261108d575b50604051908152f35b6110ae9060803d6080116110b6575b6110a681836114ed565b81019061164c565b505050611084565b503d61109c565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9060200360031b1b1684610fb2565b60046040517f66516a6e000000000000000000000000000000000000000000000000000000008152fd5b601281101561117d5760120360ff811161114e5760ff6111379116611685565b9081810291818304149015171561114e5792610efb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9093907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0160ff811161114e576111b960ff6111c09216611685565b809561166e565b93610efb575b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6111ff915061172c565b90610ef0565b915091506040813d604011611238575b81611222604093836114ed565b810103126101a157602081519101519188610eb2565b3d9150611215565b602082820181015160c4888401015286945001610e5a565b9173fffd8963efd1fc6a506488495d951d5263988d25610dda565b600091610db5565b61129591935060203d6020116108715761086281836114ed565b9187610d76565b60046040517f01de8c6d000000000000000000000000000000000000000000000000000000008152fd5b506020813d6020116112f2575b816112e0602093836114ed565b810103126101a157610c789051610c6d565b3d91506112d3565b6113129060803d6080116110b6576110a681836114ed565b505050610bf9565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9060200360031b1b1687610b2b565b346101a15760206003193601126101a1576004356000526001602052602060ff60406000205416604051908152f35b346101a15760206003193601126101a157602060405160008152f35b346101a15760806003193601126101a1576113ae611402565b506113b7611425565b506064359067ffffffffffffffff82116101a1576113db6020923690600401611448565b50507f150b7a02000000000000000000000000000000000000000000000000000000008152f35b6004359073ffffffffffffffffffffffffffffffffffffffff821682036101a157565b6024359073ffffffffffffffffffffffffffffffffffffffff821682036101a157565b9181601f840112156101a15782359167ffffffffffffffff83116101a157602083818601950101116101a157565b60031960a09101126101a15760043590602435906044359060643573ffffffffffffffffffffffffffffffffffffffff811681036101a1579060843590565b60a0810190811067ffffffffffffffff82111761040e57604052565b6040810190811067ffffffffffffffff82111761040e57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761040e57604052565b73ffffffffffffffffffffffffffffffffffffffff60025416330361154f57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b908160209103126101a1575173ffffffffffffffffffffffffffffffffffffffff811681036101a15790565b908160209103126101a1575160ff811681036101a15790565b6040517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000602082019260601b16825260006034820152603481526060810181811067ffffffffffffffff82111761040e5760405251902090565b91908260809103126101a1578151916020810151916060604083015192015190565b81156111c6570490565b9190820391821161114e57565b604d811161114e57600a0a90565b60ff16601281036116a5575090600090565b806012106000146116fd577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0160ff811161114e5760ff6116e69116611685565b9081810291818304149015171561114e5790600090565b60129291920360ff811161114e5760ff6117179116611685565b611721818461166e565b9281156111c6570690565b7f8000000000000000000000000000000000000000000000000000000000000000811461114e5760000390565b908160209103126101a1575180151581036101a15790565b73ffffffffffffffffffffffffffffffffffffffff80911691604051907f095ea7b30000000000000000000000000000000000000000000000000000000091828152837f00000000000000000000000000000000000000000000000000000000000000001660048201527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9283602483015260209586836044816000855af19081156101d4578795604494600093611863575b506040519788968795865216600485015260248401525af180156101d45761184a575050565b8161186092903d106101cd576101bf81836114ed565b50565b61187990883d8a116101cd576101bf81836114ed565b503861182456000000000000000000000000be611bfbdcb45c5e8c3e81a3ec36cbee31e529810000000000000000000000000000000000000000000000000000000000000000