0 txs
3 calls
constructor
constructor(address _initialOwner, address _oldBorrowLend, address _newBorrowLend, address _flashLoanProvider)
functions
collateralToken
viewfunction collateralToken() view returns (address)
debtToken
viewfunction debtToken() view returns (address)
explicitFunctionAccess
viewfunction explicitFunctionAccess(address, bytes4) view returns (bool)
flashLoanProvider
viewfunction flashLoanProvider() view returns (address)
newBorrowLend
viewfunction newBorrowLend() view returns (address)
oldBorrowLend
viewfunction oldBorrowLend() view returns (address)
owner
viewfunction owner() view returns (address)
acceptOwner
nonpayablefunction acceptOwner()
execute
nonpayablefunction execute()
flashLoanCallback
nonpayablefunction flashLoanCallback(address token, uint256 amount, uint256 fee, bytes) returns (bool success)
proposeNewOwner
nonpayablefunction proposeNewOwner(address account)
revokeOwnership
nonpayablefunction revokeOwnership()
setExplicitAccess
nonpayablefunction setExplicitAccess(address allowedCaller, tuple[] access)
events
ExplicitAccessSet
event ExplicitAccessSet(address indexed account, bytes4 indexed fnSelector, bool indexed value)
NewOwnerAccepted
event NewOwnerAccepted(address indexed oldOwner, address indexed newOwner)
NewOwnerProposed
event NewOwnerProposed(address indexed oldOwner, address indexed oldProposedOwner, address indexed newProposedOwner)
errors
InvalidAccess
error InvalidAccess()
InvalidAddress
error InvalidAddress(address addr)
InvalidAmount
error InvalidAmount(address token, uint256 amount)
InvalidParam
error InvalidParam()
InvalidToken
error InvalidToken(address token)
creation bytecode
0x61012060405234801562000011575f80fd5b5060405162001982380380620019828339810160408190526200003491620001e5565b83620000408162000150565b506001600160a01b03831660a081905260408051632902cbab60e11b815290516352059756916004808201926020929091908290030181865afa1580156200008a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000b091906200023f565b6001600160a01b031660e0816001600160a01b03168152505060a0516001600160a01b031663456dc17a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000108573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200012e91906200023f565b6001600160a01b039081166101005291821660c0521660805250620002629050565b5f546001600160a01b0316156200017a57604051633006171960e21b815260040160405180910390fd5b6001600160a01b038116620001a857604051634726455360e11b81525f600482015260240160405180910390fd5b5f80546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b0381168114620001e0575f80fd5b919050565b5f805f8060808587031215620001f9575f80fd5b6200020485620001c9565b93506200021460208601620001c9565b92506200022460408601620001c9565b91506200023460608601620001c9565b905092959194509250565b5f6020828403121562000250575f80fd5b6200025b82620001c9565b9392505050565b60805160a05160c05160e05161010051611688620002fa5f395f8181610258015281816104300152818161051d0152818161073e0152610a0b01525f81816101e901526107b601525f818160e30152818161065c015261082601525f81816101af0152818161053f015281816105670152818161068b015261090701525f8181610169015281816103d701526109de01526116885ff3fe608060405234801561000f575f80fd5b50600436106100da575f3560e01c80639d16bf4e11610088578063bfccf0ec11610063578063bfccf0ec1461020b578063daeccc791461021e578063ebbc49651461024b578063f8d8989814610253575f80fd5b80639d16bf4e146101aa578063b1f8100d146101d1578063b2016bd4146101e4575f80fd5b806361461954116100b8578063614619541461015c578063639af6d0146101645780638da5cb5b1461018b575f80fd5b806324c6f1fc146100de5780632b9689581461012f57806335cb62af14610139575b5f80fd5b6101057f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61013761027a565b005b61014c6101473660046112de565b6103be565b6040519015158152602001610126565b6101376108a1565b6101057f000000000000000000000000000000000000000000000000000000000000000081565b5f546101059073ffffffffffffffffffffffffffffffffffffffff1681565b6101057f000000000000000000000000000000000000000000000000000000000000000081565b6101376101df36600461136c565b610a65565b6101057f000000000000000000000000000000000000000000000000000000000000000081565b610137610219366004611387565b610bbf565b61014c61022c36600461143c565b600160209081525f928352604080842090915290825290205460ff1681565b610137610dc5565b6101057f000000000000000000000000000000000000000000000000000000000000000081565b6102a7335f357fffffffff0000000000000000000000000000000000000000000000000000000016610e91565b6102dd576040517fc0185c6400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60025473ffffffffffffffffffffffffffffffffffffffff1661dead14610351576002546040517f8e4c8aa600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90911660048201526024015b60405180910390fd5b5f805460405173ffffffffffffffffffffffffffffffffffffffff909116907f5cd6b24c0149d980c82592262b3a81294b39f8f6e3c004126aaf0828c787d554908390a35f80547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b5f3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161461042e576040517fc0185c6400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16146104cb576040517f961c9a4f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87166004820152602401610348565b8315610503576040517fd252903400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61056473ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000087610f12565b5f7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e4e889546040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105ce573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f2919061146f565b6040517fe5331e910000000000000000000000000000000000000000000000000000000081527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60048201526024810182905273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000811660448301529192505f9182917f00000000000000000000000000000000000000000000000000000000000000009091169063e5331e919060640160408051808303815f875af11580156106d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106f69190611486565b91509150878214610772576040517fb2b3b53b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016600482015260248101839052604401610348565b8281146107ea576040517fb2b3b53b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016600482015260248101849052604401610348565b6040517f62625c3f00000000000000000000000000000000000000000000000000000000815260048101849052602481018990523360448201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906362625c3f906064015f604051808303815f87803b15801561087c575f80fd5b505af115801561088e573d5f803e3d5ffd5b5060019c9b505050505050505050505050565b6108ce335f357fffffffff0000000000000000000000000000000000000000000000000000000016610e91565b610904576040517fc0185c6400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663bf1eb64a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561096e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610992919061146f565b604080516020810182525f815290517fe0232b4200000000000000000000000000000000000000000000000000000000815291925073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169163e0232b4291610a35917f0000000000000000000000000000000000000000000000000000000000000000918691600401611513565b5f604051808303815f87803b158015610a4c575f80fd5b505af1158015610a5e573d5f803e3d5ffd5b5050505050565b610a92335f357fffffffff0000000000000000000000000000000000000000000000000000000016610e91565b610ac8576040517fc0185c6400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8116610b2d576040517f8e4c8aa600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602401610348565b6002545f805460405173ffffffffffffffffffffffffffffffffffffffff808616948116939216917f64420d4a41c6ed4de2bccbf33192eea18e576c5b23c79c3a722d4e9534c2e8d891a4600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b610bec335f357fffffffff0000000000000000000000000000000000000000000000000000000016610e91565b610c22576040517fc0185c6400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8316610c87576040517f8e4c8aa600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602401610348565b604080518082019091525f80825260208201525f5b82811015610a5e57838382818110610cb657610cb6611550565b905060400201803603810190610ccc919061158a565b915081602001511515825f01517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168673ffffffffffffffffffffffffffffffffffffffff167ff5736e75de2c751f775d4c5ed517289f77074f8c337f451ba4c0c3ed1dd7f9ad60405160405180910390a460208281015173ffffffffffffffffffffffffffffffffffffffff87165f9081526001808452604080832087517fffffffff0000000000000000000000000000000000000000000000000000000016845290945292902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905501610c9c565b60025473ffffffffffffffffffffffffffffffffffffffff163314610e16576040517fc0185c6400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8054604051339273ffffffffffffffffffffffffffffffffffffffff909216917f5cd6b24c0149d980c82592262b3a81294b39f8f6e3c004126aaf0828c787d55491a35f80547fffffffffffffffffffffffff00000000000000000000000000000000000000009081163317909155600280549091169055565b5f805473ffffffffffffffffffffffffffffffffffffffff84811691161480610f0b575073ffffffffffffffffffffffffffffffffffffffff83165f9081526001602090815260408083207fffffffff000000000000000000000000000000000000000000000000000000008616845290915290205460ff165b9392505050565b6040805173ffffffffffffffffffffffffffffffffffffffff8416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052610f9f908490610fa4565b505050565b5f611005826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff166110b19092919063ffffffff16565b905080515f1480611025575080806020019051810190611025919061160a565b610f9f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610348565b60606110bf84845f856110c7565b949350505050565b606082471015611159576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610348565b5f808673ffffffffffffffffffffffffffffffffffffffff1685876040516111819190611625565b5f6040518083038185875af1925050503d805f81146111bb576040519150601f19603f3d011682016040523d82523d5f602084013e6111c0565b606091505b50915091506111d1878383876111dc565b979650505050505050565b606083156112715782515f0361126a5773ffffffffffffffffffffffffffffffffffffffff85163b61126a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610348565b50816110bf565b6110bf83838151156112865781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103489190611640565b73ffffffffffffffffffffffffffffffffffffffff811681146112db575f80fd5b50565b5f805f805f608086880312156112f2575f80fd5b85356112fd816112ba565b94506020860135935060408601359250606086013567ffffffffffffffff80821115611327575f80fd5b818801915088601f83011261133a575f80fd5b813581811115611348575f80fd5b896020828501011115611359575f80fd5b9699959850939650602001949392505050565b5f6020828403121561137c575f80fd5b8135610f0b816112ba565b5f805f60408486031215611399575f80fd5b83356113a4816112ba565b9250602084013567ffffffffffffffff808211156113c0575f80fd5b818601915086601f8301126113d3575f80fd5b8135818111156113e1575f80fd5b8760208260061b85010111156113f5575f80fd5b6020830194508093505050509250925092565b80357fffffffff0000000000000000000000000000000000000000000000000000000081168114611437575f80fd5b919050565b5f806040838503121561144d575f80fd5b8235611458816112ba565b915061146660208401611408565b90509250929050565b5f6020828403121561147f575f80fd5b5051919050565b5f8060408385031215611497575f80fd5b505080516020909101519092909150565b5f5b838110156114c25781810151838201526020016114aa565b50505f910152565b5f81518084526114e18160208601602086016114a8565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b73ffffffffffffffffffffffffffffffffffffffff84168152826020820152606060408201525f61154760608301846114ca565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b80151581146112db575f80fd5b5f6040828403121561159a575f80fd5b6040516040810181811067ffffffffffffffff821117156115e2577f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040526115ee83611408565b815260208301356115fe8161157d565b60208201529392505050565b5f6020828403121561161a575f80fd5b8151610f0b8161157d565b5f82516116368184602087016114a8565b9190910192915050565b602081525f610f0b60208301846114ca56fea2646970667358221220e1964c96148b0c6124619e7a4ee3bde2c261451854f4eb345d0a66bf511123b164736f6c63430008160033000000000000000000000000781b4c57100738095222bd92d37b07ed034ab6960000000000000000000000003963d8d2d7ac114573c1184f4036d9a12fbdefe6000000000000000000000000727224cdec0ca8200909e5b7ed1944bd899eef27000000000000000000000000c8ee801b35a82743ba7f314623962a2bbfdbc90a