0 txs
1 call
constructor
constructor(address router, address uniswapV3Router, address uniV3Quoter, address lendingPool, address rizRegistry)
functions
LENDING_POOL
viewfunction LENDING_POOL() view returns (address)
MAX_SLIPPAGE
viewfunction MAX_SLIPPAGE() view returns (uint256)
ORACLE_ROUTER
viewfunction ORACLE_ROUTER() view returns (address)
RATIO_DIVISOR
viewfunction RATIO_DIVISOR() view returns (uint256)
RIZ_REGISTRY
viewfunction RIZ_REGISTRY() view returns (address)
UNISWAPV3_QUOTER
viewfunction UNISWAPV3_QUOTER() view returns (address)
UNISWAPV3_ROUTER
viewfunction UNISWAPV3_ROUTER() view returns (address)
executeOperation
nonpayablefunction executeOperation(address[] assets, uint256[] amounts, uint256[] premiums, address initiator, bytes params) returns (bool)
loopMultiAsset
nonpayablefunction loopMultiAsset(address collateralAsset, address debtAsset, address loopAsset, address flashloanAsset, address rizLendingPool, uint256 loopLevel, uint256 collateralAmount, uint256 slippage, bytes swapPath)
events
LoopedMultiAsset
event LoopedMultiAsset(address indexed initiator, address providingAsset, address indexed leverageAsset, uint256 indexed totalDeposit)
errors
InvalidArrayLength
error InvalidArrayLength(uint256 actual)
InvalidAsset
error InvalidAsset(address providedAsset, address expectedAsset)
InvalidCollateralAsset
error InvalidCollateralAsset()
InvalidLendingPool
error InvalidLendingPool()
InvalidSlippage
error InvalidSlippage()
Unauthorized
error Unauthorized()
creation bytecode
0x6101206040523480156200001257600080fd5b506040516200207738038062002077833981016040819052620000359162000078565b6001600160a01b0394851660805290841660a052831660c05290821660e0521661010052620000f8565b6001600160a01b03811681146200007557600080fd5b50565b600080600080600060a086880312156200009157600080fd5b85516200009e816200005f565b6020870151909550620000b1816200005f565b6040870151909450620000c4816200005f565b6060870151909350620000d7816200005f565b6080870151909250620000ea816200005f565b809150509295509295909350565b60805160a05160c05160e05161010051611ee762000190600039600081816101b5015261082501526000818160c201528181610f0801528181610fa30152818161111701526111b00152600081816101060152610c1501526000818161018e015281816104e401528181610577015281816109640152610c9001526000818161016701528181610ab20152610b3f0152611ee76000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c8063920f5c8411610076578063b4dcfc771161005b578063b4dcfc7714610189578063ba613be6146101b0578063f9759518146101d757600080fd5b8063920f5c841461013f5780639ff3df391461016257600080fd5b80631cee0f02146100a85780634c5eca7e146100bd57806362febfdb146101015780636a7e9f3314610128575b600080fd5b6100bb6100b63660046116f2565b6101e0565b005b6100e47f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e47f000000000000000000000000000000000000000000000000000000000000000081565b61013161271081565b6040519081526020016100f8565b61015261014d3660046117f9565b61056a565b60405190151581526020016100f8565b6100e47f000000000000000000000000000000000000000000000000000000000000000081565b6100e47f000000000000000000000000000000000000000000000000000000000000000081565b6100e47f000000000000000000000000000000000000000000000000000000000000000081565b61013161251c81565b6101f56001600160a01b038b16333087610a00565b6040805160018082528183019092526000916020808301908036833701905050905060008160008151811061022c5761022c6118ea565b6020026020010181815250506060896001600160a01b03168c6001600160a01b0316141561028c57853360018e8e8c89898c60405160200161027699989796959493929190611900565b60405160208183030381529060405290506102fa565b8a6001600160a01b03168c6001600160a01b031614156102c857853360008c8e8c89898c60405160200161027699989796959493929190611900565b6040517fa9213b9b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000806103078e8c610a8e565b915091508d6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610349573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036d9190611975565b61037890600a611a9b565b6103828984611aaa565b61038c9190611adf565b9150808b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f19190611975565b6103fc90600a611a9b565b6104069084611aaa565b6104109190611adf565b60408051600180825281830190925291995060009350909150602080830190803683370190505090506127106104468989611aaa565b6104509190611adf565b81600081518110610463576104636118ea565b60209081029190910101526040805160018082528183019092526000918160200160208202803683370190505090508a816000815181106104a6576104a66118ea565b6001600160a01b0392831660209182029290920101526040517fab9c4b5d0000000000000000000000000000000000000000000000000000000081527f00000000000000000000000000000000000000000000000000000000000000009091169063ab9c4b5d90610528903090859087908a9033908b90600090600401611b86565b600060405180830381600087803b15801561054257600080fd5b505af1158015610556573d6000803e3d6000fd5b505050505050505050505050505050505050565b6000336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415806105ad57506001600160a01b0384163014155b156105e4576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6105ee8383610bb5565b60008a8a6000818110610603576106036118ea565b90506020020160208101906106189190611c41565b90506000808061062a86880188611c6c565b975050509550505050925061251c811080610646575061271081115b1561067d576040517f334ee9a100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008c8c6000818110610692576106926118ea565b90506020020135905060008b8b60008181106106b0576106b06118ea565b905060200201359050600085836106c79190611d8e565b9050846001600160a01b0316876001600160a01b03161461074d576040516bffffffffffffffffffffffff19606089811b82166020840152607d60ea1b603484015287901b1660378201526000908190604b01604051602081830303815290604052905061073c89886000886000868c610dff565b91506107488883611d8e565b925050505b60008060008060008e8e8101906107649190611c6c565b509650965050955095509550506107808a8486898f868f610dff565b95508b600061078f898b611d8e565b90508b6001600160a01b0316826001600160a01b03161461093f576040516bffffffffffffffffffffffff19606084811b82166020840152607d60ea1b60348401528e901b1660378201528b90600090604b0160408051601f19818403018152908290527f2f80bb1d00000000000000000000000000000000000000000000000000000000825291506000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632f80bb1d9061085c9085908890600401611da6565b6020604051808303816000875af115801561087b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061089f9190611dc8565b90506108af8f89898e858f611233565b8e6101f48660405160200161091493929190606093841b6bffffffffffffffffffffffff19908116825260e89390931b7fffffff0000000000000000000000000000000000000000000000000000000000166014820152921b166017820152602b0190565b60405160208183030381529060405291506109368f8660008460008789610dff565b5050505061094d565b61094d8286868b858c611233565b60405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301526024820183905283169063095ea7b3906044016020604051808303816000875af11580156109bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e09190611de1565b5060019e5050505050505050505050505050509998505050505050505050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd00000000000000000000000000000000000000000000000000000000179052610a88908590611410565b50505050565b60405163b3596f0760e01b81526001600160a01b03838116600483015260009182917f0000000000000000000000000000000000000000000000000000000000000000169063b3596f0790602401602060405180830381865afa158015610af9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b1d9190611dc8565b60405163b3596f0760e01b81526001600160a01b0385811660048301529193507f00000000000000000000000000000000000000000000000000000000000000009091169063b3596f0790602401602060405180830381865afa158015610b88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bac9190611dc8565b90509250929050565b8080610bc057600080fd5b6000808080610bd186880188611c6c565b506040517f0c9e77980000000000000000000000000000000000000000000000000000000081526001600160a01b038381166004830152949b5092995090975095507f00000000000000000000000000000000000000000000000000000000000000009091169350630c9e779892506024019050602060405180830381865afa158015610c62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c869190611de1565b158015610cc557507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031614155b15610cfc576040517fd8cad67600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602b85108015610d2157506017610d14601487611dfe565b610d1e9190611e15565b15155b15610d60576040517fc19d1bca000000000000000000000000000000000000000000000000000000008152600481018690526024015b60405180910390fd5b60148101516017820151602b8301516001600160a01b0380841690871614610dae576040516318e7368760e11b81526001600160a01b03808516600483015287166024820152604401610d57565b866001600160a01b0316816001600160a01b031614610df3576040516318e7368760e11b81526001600160a01b03808316600483015288166024820152604401610d57565b50505050505050505050565b6000806000610e0e8a8a610a8e565b91509150871561103357610e228688611dfe565b9650896001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e869190611975565b610e9190600a611a9b565b610e9b8884611aaa565b610ea59190611adf565b91506000610eb38284611adf565b9050612710610ec28683611aaa565b610ecc9190611adf565b6040805160a0810182528881523060208201524281830152606081018b905260808101839052905163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018c905292935090918d169063095ea7b3906044016020604051808303816000875af1158015610f65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f899190611de1565b5060405163c04b8d5960e01b815288906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c04b8d5990610fd8908590600401611e29565b6020604051808303816000875af1158015610ff7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101b9190611dc8565b6110259190611d8e565b985088945050505050611228565b896001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611071573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110959190611975565b6110a090600a611a9b565b6110aa8884611aaa565b6110b49190611adf565b915060006110c28284611adf565b90506127106110d18683611aaa565b6110db9190611adf565b6040805160a0810182528881523060208201524281830152606081018b905260808101839052905163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018c905292935090918d169063095ea7b3906044016020604051808303816000875af1158015611174573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111989190611de1565b5060405163c04b8d5960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c04b8d59906111e5908490600401611e29565b6020604051808303816000875af1158015611204573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110259190611dc8565b979650505050505050565b60405163095ea7b360e01b81526001600160a01b0385811660048301526024820185905286169063095ea7b3906044016020604051808303816000875af1158015611282573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112a69190611de1565b506040517fe8eda9df0000000000000000000000000000000000000000000000000000000081526001600160a01b0386811660048301526024820185905282811660448301526000606483015285169063e8eda9df90608401600060405180830381600087803b15801561131957600080fd5b505af115801561132d573d6000803e3d6000fd5b50506040517fa415bcad0000000000000000000000000000000000000000000000000000000081526001600160a01b03898116600483015260248201869052600260448301526000606483015284811660848301528716925063a415bcad915060a401600060405180830381600087803b1580156113aa57600080fd5b505af11580156113be573d6000803e3d6000fd5b50506040516001600160a01b03898116825286935080891692508416907f2c175749cfbb17d0c97b09041704536bc3b64913998bccfa45eb0038e1e3d4669060200160405180910390a4505050505050565b6000611465826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166114fd9092919063ffffffff16565b90508051600014806114865750808060200190518101906114869190611de1565b6114f85760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610d57565b505050565b606061150c8484600085611514565b949350505050565b60608247101561158c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610d57565b600080866001600160a01b031685876040516115a89190611e82565b60006040518083038185875af1925050503d80600081146115e5576040519150601f19603f3d011682016040523d82523d6000602084013e6115ea565b606091505b5091509150611228878383876060831561166257825161165b576001600160a01b0385163b61165b5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610d57565b508161150c565b61150c83838151156116775781518083602001fd5b8060405162461bcd60e51b8152600401610d579190611e9e565b6001600160a01b03811681146116a657600080fd5b50565b60008083601f8401126116bb57600080fd5b50813567ffffffffffffffff8111156116d357600080fd5b6020830191508360208285010111156116eb57600080fd5b9250929050565b6000806000806000806000806000806101208b8d03121561171257600080fd5b8a3561171d81611691565b995060208b013561172d81611691565b985060408b013561173d81611691565b975060608b013561174d81611691565b965060808b013561175d81611691565b955060a08b0135945060c08b0135935060e08b013592506101008b013567ffffffffffffffff81111561178f57600080fd5b61179b8d828e016116a9565b915080935050809150509295989b9194979a5092959850565b60008083601f8401126117c657600080fd5b50813567ffffffffffffffff8111156117de57600080fd5b6020830191508360208260051b85010111156116eb57600080fd5b600080600080600080600080600060a08a8c03121561181757600080fd5b893567ffffffffffffffff8082111561182f57600080fd5b61183b8d838e016117b4565b909b50995060208c013591508082111561185457600080fd5b6118608d838e016117b4565b909950975060408c013591508082111561187957600080fd5b6118858d838e016117b4565b909750955060608c0135915061189a82611691565b90935060808b013590808211156118b057600080fd5b506118bd8c828d016116a9565b915080935050809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b8981526001600160a01b038981166020830152881515604083015287811660608301528681166080830152851660a082015261010060c0820181905281018390526000610120848682850137600083860182015260e083019390935250601f909201601f191690910101979650505050505050565b60006020828403121561198757600080fd5b815160ff8116811461199857600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156119f05781600019048211156119d6576119d661199f565b808516156119e357918102915b93841c93908002906119ba565b509250929050565b600082611a0757506001611a95565b81611a1457506000611a95565b8160018114611a2a5760028114611a3457611a50565b6001915050611a95565b60ff841115611a4557611a4561199f565b50506001821b611a95565b5060208310610133831016604e8410600b8410161715611a73575081810a611a95565b611a7d83836119b5565b8060001904821115611a9157611a9161199f565b0290505b92915050565b600061199860ff8416836119f8565b6000816000190483118215151615611ac457611ac461199f565b500290565b634e487b7160e01b600052601260045260246000fd5b600082611aee57611aee611ac9565b500490565b600081518084526020808501945080840160005b83811015611b2357815187529582019590820190600101611b07565b509495945050505050565b60005b83811015611b49578181015183820152602001611b31565b83811115610a885750506000910152565b60008151808452611b72816020860160208601611b2e565b601f01601f19169290920160200192915050565b600060e082016001600160a01b03808b168452602060e081860152828b5180855261010087019150828d01945060005b81811015611bd4578551851683529483019491830191600101611bb6565b50508581036040870152611be8818c611af3565b93505050508281036060840152611bff8188611af3565b6001600160a01b0387166080850152905082810360a0840152611c228186611b5a565b915050611c3560c083018461ffff169052565b98975050505050505050565b600060208284031215611c5357600080fd5b813561199881611691565b80151581146116a657600080fd5b600080600080600080600080610100898b031215611c8957600080fd5b883597506020890135611c9b81611691565b96506040890135611cab81611c5e565b95506060890135611cbb81611691565b94506080890135611ccb81611691565b935060a0890135611cdb81611691565b925060c089013567ffffffffffffffff80821115611cf857600080fd5b818b0191508b601f830112611d0c57600080fd5b813581811115611d1e57611d1e6118d4565b604051601f8201601f19908116603f01168101908382118183101715611d4657611d466118d4565b816040528281528e6020848701011115611d5f57600080fd5b82602086016020830137600060208483010152809650505050505060e089013590509295985092959890939650565b60008219821115611da157611da161199f565b500190565b604081526000611db96040830185611b5a565b90508260208301529392505050565b600060208284031215611dda57600080fd5b5051919050565b600060208284031215611df357600080fd5b815161199881611c5e565b600082821015611e1057611e1061199f565b500390565b600082611e2457611e24611ac9565b500690565b602081526000825160a06020840152611e4560c0840182611b5a565b90506001600160a01b0360208501511660408401526040840151606084015260608401516080840152608084015160a08401528091505092915050565b60008251611e94818460208701611b2e565b9190910192915050565b6020815260006119986020830184611b5a56fea26469706673582212207912507ed28bc2fcd38581c11696353ad0dcf4345361e852766b1a10af178fa464736f6c634300080c0033000000000000000000000000aca72b23081f3786159edbca8e5fd2ae71171c69000000000000000000000000e592427a0aece92de3edee1f18e0157c05861564000000000000000000000000b27308f9f90d607463bb33ea1bebb41c27ce5ab6000000000000000000000000f4b1486dd74d07706052a33d31d7c0aafd0659e1000000000000000000000000b89546c5aa3b9d5bd1deab4474871455f9cc9841