0 txs
73 calls
constructor
No constructor.
functions
feeData
viewfunction feeData() view returns (tuple)
getAmountsIn
viewfunction getAmountsIn(uint256 amountOut, address[] path) view returns (uint256 amountIn)
getAmountsOut
viewfunction getAmountsOut(uint256 amountIn, address[] path) view returns (uint256 amountOut)
owner
viewfunction owner() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
router
viewfunction router() view returns (address)
swaps
viewfunction swaps(uint256 index) view returns (tuple)
swapsCount
viewfunction swapsCount() view returns (uint256)
swapsList
viewfunction swapsList(uint256 offset, uint256 limit) view returns (tuple[] output)
UPGRADE_INTERFACE_VERSION
viewfunction UPGRADE_INTERFACE_VERSION() view returns (string)
initialize
nonpayablefunction initialize(address router_)
renounceOwnership
nonpayablefunction renounceOwnership()
swap
payablefunction swap(address[] path, address recipient, uint256 amountIn, uint256 minAmountOut) payable returns (uint256 amountOut)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateFeeData
nonpayablefunction updateFeeData(tuple data)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
events
FeeDataUpdated
event FeeDataUpdated((uint256 fee, address beneficiary) data)
Initialized
event Initialized(uint64 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Swapped
event Swapped((address sender, address recipient, address pool, address tokenIn, address tokenOut, uint256 amountIn, uint256 amountOut, uint256 timestamp) data)
Upgraded
event Upgraded(address indexed implementation)
errors
AddressEmptyCode
error AddressEmptyCode(address target)
AddressInsufficientBalance
error AddressInsufficientBalance(address account)
BeneficiaryIsZero
error BeneficiaryIsZero()
ERC1967InvalidImplementation
error ERC1967InvalidImplementation(address implementation)
ERC1967NonPayable
error ERC1967NonPayable()
FailedInnerCall
error FailedInnerCall()
InvalidInitialization
error InvalidInitialization()
NotInitializing
error NotInitializing()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
PrepareSwapPathSwapPathAndFeeLengthIsInvalid
error PrepareSwapPathSwapPathAndFeeLengthIsInvalid(uint256 pathLength, uint256 feesLength)
RouterIsZero
error RouterIsZero()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
SendValueLtSwapFee
error SendValueLtSwapFee(uint256 fee, uint256 value)
UUPSUnauthorizedCallContext
error UUPSUnauthorizedCallContext()
UUPSUnsupportedProxiableUUID
error UUPSUnsupportedProxiableUUID(bytes32 slot)
creation bytecode
0x60a080604052346029573060805261169a908161002f823960805181818161071801526107f80152f35b600080fdfe6040608081526004908136101561001557600080fd5b600091823560e01c9081631f00ca7414610ec557816334a68a08146109b75781634f1ef2861461077c57816352d1902d14610703578163715018a61461069857816371a19c9c1461062d57816378a96f7e1461060f5781638da5cb5b146105d9578163ad3cb1cc1461055f578163c4d66de81461037e578163d06ca61f146102bc578163e753e6001461024d578163f09c58291461020c578163f131d8b51461012d57508063f2fde38b146100fd5763f887ea40146100d357600080fd5b346100f957816003193601126100f957905490516001600160a01b039091168152602090f35b5080fd5b823461012a57602036600319011261012a5761012761011a610ffa565b6101226114ad565b611439565b80f35b80fd5b9190503461020857806003193601126102085780519161014c83610f88565b803583526001600160a01b039060243590828216820361020457602085019182526101756114ad565b84511515806101f9575b6101eb5750835160028190559051600380546001600160a01b031916919093161790915590519081526020918201516001600160a01b0316918101919091527f59bd8d73ac1fc264cc3adece879e40a20ec9489ae61c32dcf92a03e9a2ba0b6d9080604081010390a180f35b835163c0f3343560e01b8152fd5b50828251161561017f565b8580fd5b8280fd5b82843461012a57602036600319011261012a575061024b61024261023c61010094610235611294565b503561125a565b506112df565b915180926110cf565bf35b5050346100f957816003193601126100f9576102b8916020825161027081610f88565b828152015280519061028182610f88565b6002548083526003546001600160a01b03908116602094850190815292519182529151909116918101919091529081906040820190565b0390f35b82843461012a57610308816102d036611080565b8254865163d06ca61f60e01b81528881019390935260248301879052919384926001600160a01b0316918391829160448301906111a4565b03915afa908115610374578291610352575b50805160001981019290831161033f576020846103378585611204565b519051908152f35b634e487b7160e01b815260118552602490fd5b61036e91503d8084833e6103668183610fc0565b81019061112a565b8461031a565b83513d84823e3d90fd5b90503461020857602036600319011261020857610399610ffa565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009182549160ff83861c16159267ffffffffffffffff811680159081610557575b600114908161054d575b159081610544575b506105345767ffffffffffffffff198116600117855583610515575b506104116115a0565b6104196115a0565b61042233611439565b61042a6115a0565b6001600160a01b0390811680156105055786546001600160a01b031980821683178955875163c45a015560e01b81529094909260209284929183918c16175afa9081156104fb5787916104cc575b501690600154161760015561048b578280f35b805468ff00000000000000001916905551600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a138808280f35b6104ee915060203d6020116104f4575b6104e68183610fc0565b81019061123b565b38610478565b503d6104dc565b86513d89823e3d90fd5b8551630b6e7cd760e31b81528390fd5b68ffffffffffffffffff19166801000000000000000117845538610408565b855163f92ee8a960e01b81528390fd5b905015386103ec565b303b1591506103e4565b8591506103da565b5050346100f957816003193601126100f957805161057c81610f88565b60058152602090640352e302e360dc1b6020820152825193849260208452825192836020860152825b8481106105c357505050828201840152601f01601f19168101030190f35b81810183015188820188015287955082016105a5565b5050346100f957816003193601126100f9576000805160206116458339815191525490516001600160a01b039091168152602090f35b90503461020857826003193601126102085760209250549051908152f35b839150346100f957826003193601126100f95761064f8391602435903561134b565b81519160208080850192818652845180945285019301945b8281106106745784840385f35b90919282610100826106896001948a516110cf565b01960191019492919094610667565b833461012a578060031936011261012a576106b16114ad565b60008051602061164583398151915280546001600160a01b031981169091556000906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b82843461012a578060031936011261012a57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300361076f57602090517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b5163703e46dd60e11b8152fd5b9180915060031936011261020857610792610ffa565b90602493843567ffffffffffffffff81116100f957366023820112156100f95780850135936107c0856110b3565b6107cc85519182610fc0565b85815260209586820193368a8383010111610204578186928b8a93018737830101526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114908115610989575b50610979576108316114ad565b85516352d1902d60e01b81529083169680828a818b5afa9182918793610949575b505061086e5750505050505191634c9c8ce360e01b8352820152fd5b86899689927f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc908181036109345750853b1561091f5780546001600160a01b0319168317905551869392917fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8580a28251156109035750506108ff9382915190845af46108f9611570565b916115e1565b5080f35b9350935050503461091357505080f35b63b398979f60e01b8152fd5b5051634c9c8ce360e01b815291820152859150fd5b848a91845191632a87526960e21b8352820152fd5b9080929350813d8311610972575b6109618183610fc0565b810103126102045751903880610852565b503d610957565b855163703e46dd60e11b81528890fd5b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416141538610824565b91905060803660031901126102085767ffffffffffffffff8235818111610ec1576109e59036908501611010565b936001600160a01b0391602490813584811690819003610ebd5760449182359160025480610e65575b5086610a198b6111e1565b5116968a516000198101908111610e5357610a3582918d611204565b51169289519b60209c8d6323b872dd60e01b90820152338982015230888201528660648201526064815260a0810181811084821117610e405791898f938f95938f908f8f610a898f95938f948652836114fe565b8a8154169484519582808c890163095ea7b360e01b97888252848c8c0152858b0152848a52610ab78a610fa4565b89519082885af1610ac6611570565b81610e10575b5080610e06575b15610dce575b50505050509150505192866370a0823160e01b95868652850152838b818a5afa928315610d8c578f8c94610d9a575b5050848b541690813b15610d96578a8f928f8e8d9695610b5182968f9460a090519a8b9889978896635c11d79560e01b88528701526064359086015284015260a48301906111a4565b8c606483015242608483015203925af18015610d8c57610d67575b50508a51918252838c8301528c828981885afa8015610d5d578990610d29575b610b969250611218565b998b82600154168b519788809263e6a4390560e01b82528d86830152888c8301525afa958615610d1f578896610d00575b50895198610bd48a610f55565b338a528c8a01938452828b8b019716875260608a0190815260808a0194855260a08a0195865260c08a01968c885260e08b0198428a52835468010000000000000000811015610cee57806001610c2c9201865561125a565b9b909b610cdf575050928a9895926101009a98959260079895837f617631f6f87a9b7d6deaa683b40948846ac2133586584dfa9824be0541a08cc79e5116946bffffffffffffffffffffffff60a01b95868d5416178c558460018d01915116868254161790558360028c01915116858254161790558260038b019151168482541617905588019251169082541617905551600585015551600684015551910155610cd8845180926110cf565ba151908152f35b634e487b7160e01b8152808552fd5b50634e487b7160e01b8b52604184528afd5b610d189196508c8d3d106104f4576104e68183610fc0565b9438610bc7565b8a513d8a823e3d90fd5b508c82813d8311610d56575b610d3f8183610fc0565b81010312610d5157610b969151610b8c565b600080fd5b503d610d35565b8b513d8b823e3d90fd5b819a929a11610d7a578b52973880610b6c565b634e487b7160e01b825260418d528882fd5b8d513d8d823e3d90fd5b8b80fd5b9080929450813d8311610dc7575b610db28183610fc0565b81010312610dc3575191388f610b08565b8a80fd5b503d610da8565b610df997610df39651958c8701528501528301528d8252610dee82610fa4565b6114fe565b8d6114fe565b89388e818f8f8e83610ad9565b50833b1515610ad3565b8051801592508d908315610e28575b50505038610acc565b610e3893508201810191016114e6565b388c81610e1f565b50634e487b7160e01b8a5260418d52888afd5b634e487b7160e01b885260118b528688fd5b803410610ea15750858080808a6003541681903415610e97575b3491f115610e8d5738610a0e565b87513d87823e3d90fd5b6108fc9150610e7f565b885163d713334760e01b8152808b019190915234818701528490fd5b8380fd5b8480fd5b9050823461012a57610f0d91610eda36611080565b919060018060a01b03845416918651958694859384936307c0329d60e21b855284015288602484015260448301906111a4565b03915afa908115610f495790610337918460209592610f2e575b50506111e1565b610f4292503d8091833e6103668183610fc0565b3880610f27565b505051903d90823e3d90fd5b610100810190811067ffffffffffffffff821117610f7257604052565b634e487b7160e01b600052604160045260246000fd5b6040810190811067ffffffffffffffff821117610f7257604052565b6080810190811067ffffffffffffffff821117610f7257604052565b90601f8019910116810190811067ffffffffffffffff821117610f7257604052565b67ffffffffffffffff8111610f725760051b60200190565b600435906001600160a01b0382168203610d5157565b9080601f83011215610d5157602090823561102a81610fe2565b936110386040519586610fc0565b81855260208086019260051b820101928311610d5157602001905b828210611061575050505090565b81356001600160a01b0381168103610d51578152908301908301611053565b906040600319830112610d5157600435916024359067ffffffffffffffff8211610d51576110b091600401611010565b90565b67ffffffffffffffff8111610f7257601f01601f191660200190565b60e0809160018060a01b03808251168552806020830151166020860152806040830151166040860152806060830151166060860152608082015116608085015260a081015160a085015260c081015160c08501520151910152565b6020908181840312610d515780519067ffffffffffffffff8211610d5157019180601f84011215610d5157825161116081610fe2565b9361116e6040519586610fc0565b818552838086019260051b820101928311610d51578301905b828210611195575050505090565b81518152908301908301611187565b90815180825260208080930193019160005b8281106111c4575050505090565b83516001600160a01b0316855293810193928101926001016111b6565b8051156111ee5760200190565b634e487b7160e01b600052603260045260246000fd5b80518210156111ee5760209160051b010190565b9190820391821161122557565b634e487b7160e01b600052601160045260246000fd5b90816020910312610d5157516001600160a01b0381168103610d515790565b6004548110156111ee57600460005260031b7f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0190600090565b604051906112a182610f55565b8160e06000918281528260208201528260408201528260608201528260808201528260a08201528260c08201520152565b9190820180921161122557565b906040516112ec81610f55565b82546001600160a01b0390811682526001840154811660208301526002840154811660408301526003840154811660608301526004840154166080820152600583015460a0820152600683015460c082015260079092015460e0830152565b9190600454908184101561141157611377916113688592836112d2565b90818110611409575b50611218565b9161138183610fe2565b9261138f6040519485610fc0565b80845261139e601f1991610fe2565b0160005b8181106113f25750508260005b84518110156113ec57806113d061023c6113cb600194876112d2565b61125a565b6113da8288611204565b526113e58187611204565b50016113af565b50925050565b6020906113fd611294565b828288010152016113a2565b905038611371565b505090506040516020810181811067ffffffffffffffff821117610f72576040526000815290565b6001600160a01b039081169081156114945760008051602061164583398151915280546001600160a01b031981168417909155167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3565b604051631e4fbdf760e01b815260006004820152602490fd5b600080516020611645833981519152546001600160a01b031633036114ce57565b60405163118cdaa760e01b8152336004820152602490fd5b90816020910312610d5157518015158103610d515790565b6000806115279260018060a01b03169360208151910182865af1611520611570565b90836115e1565b8051908115159182611555575b505061153d5750565b60249060405190635274afe760e01b82526004820152fd5b61156892506020809183010191016114e6565b153880611534565b3d1561159b573d90611581826110b3565b9161158f6040519384610fc0565b82523d6000602084013e565b606090565b60ff7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460401c16156115cf57565b604051631afcd79f60e31b8152600490fd5b9061160857508051156115f657805190602001fd5b604051630a12f52160e11b8152600490fd5b8151158061163b575b611619575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561161156fe9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300a2646970667358221220e543486970e6b73394fcb230f4a19c451788268c14585c3779de744b534732ec64736f6c63430008190033