0 txs
5 calls
constructor
constructor()
functions
idToMarketParams
viewfunction idToMarketParams(bytes32 id) view returns (tuple marketParams)
idToTokenAddresses
viewfunction idToTokenAddresses(bytes32 id) view returns (address loanToken, address collateralToken)
isAuthorizedUser
viewfunction isAuthorizedUser(address) view returns (bool)
morpho
viewfunction morpho() view returns (address)
owner
viewfunction owner() view returns (address)
pendleCustomRouter
viewfunction pendleCustomRouter() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
UPGRADE_INTERFACE_VERSION
viewfunction UPGRADE_INTERFACE_VERSION() view returns (string)
deleverageMorpho
nonpayablefunction deleverageMorpho(bytes32 id, address pendleMarket, uint256 ptTokenAmount, uint256 flashLoanAmount, bytes swapData)
depositAssetsForLooping
nonpayablefunction depositAssetsForLooping(bytes32 id, address pendleMarket, uint256 amount, uint8 leverage, bytes swapData)
flashLoan
nonpayablefunction flashLoan(address token, uint256 assets, bytes data)
initialize
nonpayablefunction initialize(address initialOwner, address morphoAddress, address pendleCustomRouterAddress)
onMorphoFlashLoan
nonpayablefunction onMorphoFlashLoan(uint256 assets, bytes data)
renounceOwnership
nonpayablefunction renounceOwnership()
setIsAuthorizedUser
nonpayablefunction setIsAuthorizedUser(address user, bool isAuthorized)
setMorpho
nonpayablefunction setMorpho(address newMorpho)
setPendleCustomRouter
nonpayablefunction setPendleCustomRouter(address _pendleCustomRouter)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
events
DepositForLooping
event DepositForLooping(bytes32 indexed id, uint256 amount, uint8 leverage, address pendleMarket, bytes swapData)
Initialized
event Initialized(uint64 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Upgraded
event Upgraded(address indexed implementation)
errors
AddressEmptyCode
error AddressEmptyCode(address target)
ERC1967InvalidImplementation
error ERC1967InvalidImplementation(address implementation)
ERC1967NonPayable
error ERC1967NonPayable()
FailedCall
error FailedCall()
InvalidInitialization
error InvalidInitialization()
NotInitializing
error NotInitializing()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
UUPSUnauthorizedCallContext
error UUPSUnauthorizedCallContext()
UUPSUnsupportedProxiableUUID
error UUPSUnsupportedProxiableUUID(bytes32 slot)
creation bytecode
0x60a06040523060805234801561001457600080fd5b5061001d610022565b6100d4565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100725760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100d15780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6080516122e46100fd600039600081816113ce015281816113f7015261157a01526122e46000f3fe6080604052600436106101445760003560e01c80637263ed10116100c0578063e0232b4211610074578063ec17e13a11610059578063ec17e13a146103d1578063f2fde38b14610411578063ffb049a31461043157600080fd5b8063e0232b4214610391578063e8cf7bca146103b157600080fd5b8063ad3cb1cc116100a5578063ad3cb1cc146102fd578063c0c53b8b14610353578063d8fbc8331461037357600080fd5b80637263ed10146102a05780638da5cb5b146102c057600080fd5b80633683d8001161011757806352d1902d116100fc57806352d1902d146102305780635f7f7cc214610253578063715018a61461028b57600080fd5b80633683d800146101fd5780634f1ef2861461021d57600080fd5b80631b08261a146101495780631da98c921461018e5780632c3c9157146101b057806331f57072146101dd575b600080fd5b34801561015557600080fd5b506101696101643660046118e6565b610451565b604080516001600160a01b039384168152929091166020830152015b60405180910390f35b34801561019a57600080fd5b506101ae6101a9366004611914565b6104d6565b005b3480156101bc57600080fd5b506101d06101cb3660046118e6565b610500565b6040516101859190611931565b3480156101e957600080fd5b506101ae6101f83660046119d7565b61059a565b34801561020957600080fd5b506101ae610218366004611914565b61066d565b6101ae61022b366004611ac8565b610697565b34801561023c57600080fd5b506102456106b6565b604051908152602001610185565b34801561025f57600080fd5b50600154610273906001600160a01b031681565b6040516001600160a01b039091168152602001610185565b34801561029757600080fd5b506101ae6106e5565b3480156102ac57600080fd5b506101ae6102bb366004611b18565b6106f9565b3480156102cc57600080fd5b507f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b0316610273565b34801561030957600080fd5b506103466040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516101859190611bea565b34801561035f57600080fd5b506101ae61036e366004611bfd565b6108f4565b34801561037f57600080fd5b506000546001600160a01b0316610273565b34801561039d57600080fd5b506101ae6103ac366004611c48565b610a81565b3480156103bd57600080fd5b506101ae6103cc366004611ca4565b610ae5565b3480156103dd57600080fd5b506104016103ec366004611914565b60026020526000908152604090205460ff1681565b6040519015158152602001610185565b34801561041d57600080fd5b506101ae61042c366004611914565b610b84565b34801561043d57600080fd5b506101ae61044c366004611d07565b610bdb565b60008054604051632c3c915760e01b815260048101849052829182916001600160a01b0390911690632c3c91579060240160a060405180830381865afa15801561049f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c39190611d40565b8051602090910151909590945092505050565b6104de610c65565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6040805160a0810182526000808252602082018190528183018190526060820181905260808201819052549151632c3c915760e01b81526004810184905290916001600160a01b031690632c3c91579060240160a060405180830381865afa158015610570573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105949190611d40565b92915050565b6000546001600160a01b031633146105f95760405162461bcd60e51b815260206004820152601b60248201527f466c617368426f72726f7765723a20756e617574686f72697a6564000000000060448201526064015b60405180910390fd5b6000808080808061060c87890189611dd3565b95509550955095509550955060008061062488610451565b91509150600061063389610500565b905087156106505761064b8c888585858b8b8b610cd9565b61065f565b61065f8c888585858b8a611004565b505050505050505050505050565b610675610c65565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b61069f6113c3565b6106a88261147a565b6106b28282611482565b5050565b60006106c061156f565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b6106ed610c65565b6106f760006115b8565b565b600061070487610451565b503360009081526002602052604090205490915060ff166107675760405162461bcd60e51b815260206004820152601b60248201527f466c617368426f72726f7765723a20756e617574686f72697a6564000000000060448201526064016105f0565b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018690526001600160a01b038216906323b872dd906064016020604051808303816000875af11580156107d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f79190611e5a565b506000610805600186611e8d565b6108129060ff1687611ea6565b9050600088600188338b89896040516020016108349796959493929190611ee6565b60408051601f198184030181529082905260005463701195a160e11b83529092506001600160a01b03169063e0232b429061087790869086908690600401611f39565b600060405180830381600087803b15801561089157600080fd5b505af11580156108a5573d6000803e3d6000fd5b50505050887f25554ceeacdbe08161b0fb1df244f4f241044315f862604cf98f16c4173f988d88888b89896040516108e1959493929190611f61565b60405180910390a2505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff1660008115801561093f5750825b905060008267ffffffffffffffff16600114801561095c5750303b155b90508115801561096a575080155b156109a1576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156109d557845468ff00000000000000001916680100000000000000001785555b6109de88611629565b6109e661163a565b600080546001600160a01b03808a166001600160a01b0319928316178355600180548a831693169290921782558a16825260026020526040909120805460ff191690911790558315610a7757845468ff000000000000000019168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b60005460405163701195a160e11b81526001600160a01b039091169063e0232b4290610ab7908790879087908790600401611f9e565b600060405180830381600087803b158015610ad157600080fd5b505af1158015610a77573d6000803e3d6000fd5b6000610af087610451565b509050600087600087338a8888604051602001610b139796959493929190611ee6565b60408051601f198184030181529082905260005463701195a160e11b83529092506001600160a01b03169063e0232b4290610b5690859089908690600401611f39565b600060405180830381600087803b158015610b7057600080fd5b505af115801561065f573d6000803e3d6000fd5b610b8c610c65565b6001600160a01b038116610bcf576040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600060048201526024016105f0565b610bd8816115b8565b50565b3360009081526002602052604090205460ff16610c3a5760405162461bcd60e51b815260206004820152601b60248201527f466c617368426f72726f7765723a20756e617574686f72697a6564000000000060448201526064016105f0565b6001600160a01b03919091166000908152600260205260409020805460ff1916911515919091179055565b33610c977f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6001600160a01b0316146106f7576040517f118cdaa70000000000000000000000000000000000000000000000000000000081523360048201526024016105f0565b6000610ce5888a611fd1565b60015460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925088169063a9059cbb906044016020604051808303816000875af1158015610d3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5e9190611e5a565b506001546040517f14033e870000000000000000000000000000000000000000000000000000000081526000916001600160a01b0316906314033e8790610daf9087908c9087908990600401611fe4565b6020604051808303816000875af1158015610dce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df2919061201b565b60005460405163095ea7b360e01b81526001600160a01b0391821660048201526024810183905291925088169063095ea7b3906044016020604051808303816000875af1158015610e47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e6b9190611e5a565b506000546040517f238d65790000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063238d657990610eb990899085908a90600401612034565b600060405180830381600087803b158015610ed357600080fd5b505af1158015610ee7573d6000803e3d6000fd5b5050600080546040517f50d8cd4b0000000000000000000000000000000000000000000000000000000081526001600160a01b0390911693506350d8cd4b9250610f3c918a918f91908b9030906004016120bc565b60408051808303816000875af1158015610f5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f7e9190612147565b505060005460405163095ea7b360e01b81526001600160a01b039182166004820152602481018c90529089169063095ea7b3906044016020604051808303816000875af1158015610fd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff79190611e5a565b5050505050505050505050565b60005460405163095ea7b360e01b81526001600160a01b039182166004820152602481018990529086169063095ea7b3906044016020604051808303816000875af1158015611057573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061107b9190611e5a565b50600080546040516320b76e8160e01b81526001600160a01b03909116906320b76e81906110b39087908c908690899060040161216b565b60408051808303816000875af11580156110d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f59190612147565b6000546001546040517f8720316d0000000000000000000000000000000000000000000000000000000081529294506001600160a01b039182169350638720316d9261114d9289928d928a92909116906004016121fc565b600060405180830381600087803b15801561116757600080fd5b505af115801561117b573d6000803e3d6000fd5b50506001546040517f841eabd0000000000000000000000000000000000000000000000000000000008152600093506001600160a01b03909116915063841eabd0906111cf9089908c908890600401611f39565b6020604051808303816000875af11580156111ee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611212919061201b565b60005460405163095ea7b360e01b81526001600160a01b0391821660048201526024810183905291925088169063095ea7b3906044016020604051808303816000875af1158015611267573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128b9190611e5a565b5060006112988a8361227f565b905080156113b757600080546040516320b76e8160e01b81526001600160a01b03909116916320b76e81916112d6918a918691908b9060040161216b565b60408051808303816000875af1925050508015611310575060408051601f3d908101601f1916820190925261130d91810190612147565b60015b61065f573d80801561133e576040519150601f19603f3d011682016040523d82523d6000602084013e611343565b606091505b5060405163a9059cbb60e01b81526001600160a01b038781166004830152602482018490528a169063a9059cbb906044016020604051808303816000875af1158015611393573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065f9190611e5a565b50505050505050505050565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148061145c57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166114507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b6001600160a01b031614155b156106f75760405163703e46dd60e11b815260040160405180910390fd5b610bd8610c65565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156114dc575060408051601f3d908101601f191682019092526114d99181019061201b565b60015b61150457604051634c9c8ce360e01b81526001600160a01b03831660048201526024016105f0565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114611560576040517faa1d49a4000000000000000000000000000000000000000000000000000000008152600481018290526024016105f0565b61156a8383611642565b505050565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146106f75760405163703e46dd60e11b815260040160405180910390fd5b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b611631611698565b610bd8816116ff565b6106f7611698565b61164b82611707565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156116905761156a828261177e565b6106b26117f4565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff166106f7576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b8c611698565b806001600160a01b03163b60000361173d57604051634c9c8ce360e01b81526001600160a01b03821660048201526024016105f0565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b03168460405161179b9190612292565b600060405180830381855af49150503d80600081146117d6576040519150601f19603f3d011682016040523d82523d6000602084013e6117db565b606091505b50915091506117eb85838361182c565b95945050505050565b34156106f7576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6060826118415761183c826118a4565b61189d565b815115801561185857506001600160a01b0384163b155b1561189a576040517f9996b3150000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201526024016105f0565b50805b9392505050565b8051156118b45780518082602001fd5b6040517fd6bda27500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000602082840312156118f857600080fd5b5035919050565b6001600160a01b0381168114610bd857600080fd5b60006020828403121561192657600080fd5b813561189d816118ff565b60a0810161059482846001600160a01b0381511682526001600160a01b0360208201511660208301526001600160a01b0360408201511660408301526001600160a01b036060820151166060830152608081015160808301525050565b60008083601f8401126119a057600080fd5b50813567ffffffffffffffff8111156119b857600080fd5b6020830191508360208285010111156119d057600080fd5b9250929050565b6000806000604084860312156119ec57600080fd5b83359250602084013567ffffffffffffffff811115611a0a57600080fd5b611a168682870161198e565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112611a4a57600080fd5b813567ffffffffffffffff811115611a6457611a64611a23565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715611a9357611a93611a23565b604052818152838201602001851015611aab57600080fd5b816020850160208301376000918101602001919091529392505050565b60008060408385031215611adb57600080fd5b8235611ae6816118ff565b9150602083013567ffffffffffffffff811115611b0257600080fd5b611b0e85828601611a39565b9150509250929050565b60008060008060008060a08789031215611b3157600080fd5b863595506020870135611b43816118ff565b945060408701359350606087013560ff81168114611b6057600080fd5b9250608087013567ffffffffffffffff811115611b7c57600080fd5b611b8889828a0161198e565b979a9699509497509295939492505050565b60005b83811015611bb5578181015183820152602001611b9d565b50506000910152565b60008151808452611bd6816020860160208601611b9a565b601f01601f19169290920160200192915050565b60208152600061189d6020830184611bbe565b600080600060608486031215611c1257600080fd5b8335611c1d816118ff565b92506020840135611c2d816118ff565b91506040840135611c3d816118ff565b809150509250925092565b60008060008060608587031215611c5e57600080fd5b8435611c69816118ff565b935060208501359250604085013567ffffffffffffffff811115611c8c57600080fd5b611c988782880161198e565b95989497509550505050565b60008060008060008060a08789031215611cbd57600080fd5b863595506020870135611ccf816118ff565b94506040870135935060608701359250608087013567ffffffffffffffff811115611b7c57600080fd5b8015158114610bd857600080fd5b60008060408385031215611d1a57600080fd5b8235611d25816118ff565b91506020830135611d3581611cf9565b809150509250929050565b600060a0828403128015611d5357600080fd5b5060405160a0810167ffffffffffffffff81118282101715611d7757611d77611a23565b6040528251611d85816118ff565b81526020830151611d95816118ff565b60208201526040830151611da8816118ff565b60408201526060830151611dbb816118ff565b60608201526080928301519281019290925250919050565b60008060008060008060c08789031215611dec57600080fd5b863595506020870135611dfe81611cf9565b9450604087013593506060870135611e15816118ff565b92506080870135611e25816118ff565b915060a087013567ffffffffffffffff811115611e4157600080fd5b611e4d89828a01611a39565b9150509295509295509295565b600060208284031215611e6c57600080fd5b815161189d81611cf9565b634e487b7160e01b600052601160045260246000fd5b60ff828116828216039081111561059457610594611e77565b808202811582820484141761059457610594611e77565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b87815286151560208201528560408201526001600160a01b03851660608201526001600160a01b038416608082015260c060a08201526000611f2c60c083018486611ebd565b9998505050505050505050565b6001600160a01b03841681528260208201526060604082015260006117eb6060830184611bbe565b85815260ff851660208201526001600160a01b0384166040820152608060608201526000611f93608083018486611ebd565b979650505050505050565b6001600160a01b0385168152836020820152606060408201526000611fc7606083018486611ebd565b9695505050505050565b8082018082111561059457610594611e77565b6001600160a01b03851681526001600160a01b0384166020820152826040820152608060608201526000611fc76080830184611bbe565b60006020828403121561202d57600080fd5b5051919050565b61208d81856001600160a01b0381511682526001600160a01b0360208201511660208301526001600160a01b0360408201511660408301526001600160a01b036060820151166060830152608081015160808301525050565b60a08101929092526001600160a01b031660c082015261010060e0820181905260009082015261012001919050565b610120810161211a82886001600160a01b0381511682526001600160a01b0360208201511660208301526001600160a01b0360408201511660408301526001600160a01b036060820151166060830152608081015160808301525050565b60a082019590955260c08101939093526001600160a01b0391821660e08401521661010090910152919050565b6000806040838503121561215a57600080fd5b505080516020909101519092909150565b6121c481866001600160a01b0381511682526001600160a01b0360208201511660208301526001600160a01b0360408201511660408301526001600160a01b036060820151166060830152608081015160808301525050565b60a081019390935260c08301919091526001600160a01b031660e0820152610120610100820181905260009082015261014001919050565b610100810161225a82876001600160a01b0381511682526001600160a01b0360208201511660208301526001600160a01b0360408201511660408301526001600160a01b036060820151166060830152608081015160808301525050565b60a08201949094526001600160a01b0392831660c0820152911660e090910152919050565b8181038181111561059457610594611e77565b600082516122a4818460208701611b9a565b919091019291505056fea2646970667358221220dcc0373ddf527a2ebf134ea6a797fbbf2a77a4a70bf54f663513afc596ffd93764736f6c634300081c0033