0 txs
3 calls
constructor
constructor()
functions
balance
viewfunction balance() view returns (uint256)
balanceOf
viewfunction balanceOf(address address_) view returns (uint256)
getAsset
viewfunction getAsset() view returns (address)
getConfig
viewfunction getConfig() view returns (address)
getDecimals
viewfunction getDecimals() view returns (uint8)
getDepositLimit
viewfunction getDepositLimit() view returns (uint256)
deposit
nonpayablefunction deposit(uint256 vaultBalanceBefore, address owner) returns (uint256)
initialize
nonpayablefunction initialize(address assetAddr, address configAddr)
setDepositLimit
nonpayablefunction setDepositLimit(uint256 limit)
withdraw
nonpayablefunction withdraw(uint256 amount, address owner, bool approveSender)
events
DepositLimitChanged
event DepositLimitChanged(uint256 newLimit)
Initialized
event Initialized(uint64 version)
errors
AddressEmptyCode
error AddressEmptyCode(address target)
AddressInsufficientBalance
error AddressInsufficientBalance(address account)
DepositFailed
error DepositFailed(string)
DepositLimitExceeded
error DepositLimitExceeded(uint256 depositAmount, uint256 depositLimit)
FailedInnerCall
error FailedInnerCall()
InvalidInitialization
error InvalidInitialization()
InvalidZeroAddress
error InvalidZeroAddress()
NotInitializing
error NotInitializing()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
UnauthorizedCaller
error UnauthorizedCaller(address)
WithdrawFailed
error WithdrawFailed(string)
creation bytecode
0x60806040523461002257610011610026565b60405161117761016a823961117790f35b5f80fd5b61002e610038565b6100366100bc565b565b61003661003661002e565b6100509060401c60ff1690565b90565b6100509054610043565b610050905b6001600160401b031690565b610050905461005d565b61005090610062906001600160401b031682565b9061009c6100506100b892610078565b82546001600160401b0319166001600160401b03919091161790565b9055565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006100e681610053565b610158576100f38161006e565b6001600160401b039190829081160361010a575050565b816101397fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2936101539361008c565b604051918291826001600160401b03909116815260200190565b0390a1565b63f92ee8a960e01b5f908152600490fdfe60806040526004361015610011575f80fd5b5f3560e01c8062ebf5dd146100af578063485cc955146100aa5780635c222bad146100a55780636e553f65146100a057806370a082311461009b578063abda8a9c14610096578063b69ef8a814610091578063bdc8144b1461008c578063c3f909d4146100875763f0141d84036100b4576102d6565b6102bb565b6102a3565b610274565b610259565b61023e565b6101fe565b6101ad565b610186565b610140565b5f80fd5b805b036100b457565b905035906100ce826100b8565b565b6001600160a01b031690565b90565b6001600160a01b0381166100ba565b905035906100ce826100df565b8015156100ba565b905035906100ce826100fb565b90916060828403126100b4576100dc61012984846100c1565b93604061013982602087016100ee565b9401610103565b346100b457610159610153366004610110565b916105fc565b60405180805b0390f35b91906040838203126100b4576100dc90602061017f82866100ee565b94016100ee565b346100b457610159610199366004610163565b90610933565b5f9103126100b457565b9052565b346100b4576101bd36600461019f565b61015f6101c861093d565b604051918291826001600160a01b03909116815260200190565b91906040838203126100b4576100dc90602061017f82866100c1565b346100b45761015f61021a6102143660046101e2565b90610b12565b6040519182918290815260200190565b906020828203126100b4576100dc916100ee565b346100b45761015f61021a61025436600461022a565b610b1d565b346100b45761026936600461019f565b61015f61021a610b26565b346100b45761028436600461019f565b61015f61021a610b30565b906020828203126100b4576100dc916100c1565b346100b4576101596102b636600461028f565b610bca565b346100b4576102cb36600461019f565b61015f6101c8610bd3565b346100b4576102e636600461019f565b61015f6102f1610bf2565b6040519182918260ff909116815260200190565b6100dc906100d0906001600160a01b031682565b6100dc90610305565b6100dc90610319565b634e487b7160e01b5f52604160045260245ffd5b90601f01601f1916810190811067ffffffffffffffff82111761036157604052565b61032b565b905051906100ce826100df565b906020828203126100b4576100dc91610366565b6040513d5f823e3d90fd5b1561039a5750565b63d86ad9cf60e01b5f9081526001600160a01b0390911660045260245b035ffd5b91906103cd6103c8610bfc565b610322565b9260206103d960405190565b631a02bb0d60e11b815294859060049082905afa801561044f5761041261041b916100ce965f91610420575b506001600160a01b031690565b33143390610392565b610454565b610442915060203d602011610448575b61043a818361033f565b810190610373565b5f610405565b503d610430565b610387565b91906104616103c8610bfc565b92833b156100b4575f61047360405190565b63327cff5560e21b815294859060049082905afa93841561044f576100ce9461049d575b5061059e565b6104b4905f6104ac818361033f565b81019061019f565b5f610497565b156104c157565b604051637e3ca37b60e01b815260206004820152601e60248201527f4e6f7420656e6f7567682062616c616e636520746f20776974686472617700006044820152606490fd5b9061051190610322565b5f5260205260405f2090565b6100dc9081565b6100dc905461051d565b634e487b7160e01b5f52601160045260245ffd5b9190820391821161054f57565b61052e565b905f19905b9181191691161790565b6100dc6100dc6100dc9290565b906105806100dc61058792610563565b8254610554565b9055565b6100dc906100d0565b6100dc905461058b565b91906105c56105dd916105be6105b66100dc83610c08565b8611156104ba565b6034610507565b6105d7846105d283610524565b610542565b90610570565b6105e45750565b6100ce906105f56103c86033610594565b3390610c8f565b906100ce92916103bb565b6100dc9060401c5b60ff1690565b6100dc9054610607565b6100dc905b67ffffffffffffffff1690565b6100dc905461061f565b6106246100dc6100dc9290565b9067ffffffffffffffff90610559565b6106246100dc6100dc9267ffffffffffffffff1690565b9061067f6100dc61058792610658565b8254610648565b9068ff00000000000000009060401b610559565b906106aa6100dc61058792151590565b8254610686565b6101a99061063b565b6020810192916100ce91906106b1565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009081906107076107016106fd84610615565b1590565b92610631565b936107115f61063b565b67ffffffffffffffff86161480610813575b6001956107406107328861063b565b9167ffffffffffffffff1690565b1490816107eb575b155b90816107e2575b506107d15761077a91836107715f6107688961063b565b9701968761066f565b6107c2576108a0565b610782575050565b7fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2916107b15f6107bd9361069a565b604051918291826106ba565b0390a1565b6107cc868661069a565b6108a0565b63f92ee8a960e01b5f908152600490fd5b1590505f610751565b905061074a6107f930610322565b3b61080a6108065f610563565b9190565b14919050610748565b5082610723565b906001600160a01b0390610559565b906108396100dc61058792610322565b825461081a565b60ff81166100ba565b905051906100ce82610840565b906020828203126100b4576100dc91610849565b9060ff60a01b9060a01b610559565b61060f6100dc6100dc9260ff1690565b906108996100dc61058792610879565b825461086a565b6108ac6108bc92610d49565b6108b581610d80565b6033610829565b6108cc6103c86103c86033610594565b60206108d760405190565b63313ce56760e01b815291829060049082905afa801561044f576100ce915f91610904575b506033610889565b610926915060203d60201161092c575b61091e818361033f565b810190610856565b5f6108fc565b503d610914565b906100ce916106ca565b6100dc6033610594565b91906109546103c8610bfc565b92602061096060405190565b631a02bb0d60e11b815294859060049082905afa801561044f57610412610998916100dc965f9161042057506001600160a01b031690565b91906109a56103c8610bfc565b92833b156100b4575f6109b760405190565b63e0efcf5560e01b815294859060049082905afa93841561044f576100dc946109e1575b50610aaa565b6109f0905f6104ac818361033f565b5f6109db565b156109fd57565b6040516363299ad160e01b815260206004820152603d60248201527f546f6b656e732077657265206e6f74207472616e7366657272656420746f205660448201527f61756c74206265666f72652063616c6c696e67206465706f73697428290000006064820152608490fd5b9081526040810192916100ce9160200152565b15610a85575050565b63f461319760e01b5f908152916103b7916004610a69565b9190820180921161054f57565b6100dc9192610b0091506105be610ac9610ac2610dc8565b9586610542565b94610add610ad65f610563565b87116109f6565b610aed6108066100dc6035610524565b111585610afa6035610524565b91610a7c565b6105d783610b0d83610524565b610a9d565b6100dc91905f610947565b6100dc90610c08565b6100dc6035610524565b6100dc610dc8565b610b436103c8610bfc565b90813b156100b4575f610b5560405190565b630ebbac1960e31b815233600482015292839060249082905afa91821561044f576100ce92610b85575b50610b9a565b610b94905f6104ac818361033f565b5f610b7f565b6107bd7fd2f7d876097fbfad8695bf20675f267d8cbfbc3a2969b4142f914e9478272fe29161021a816035610570565b6100ce90610b38565b6100dc5f610594565b6100dc9060a01c61060f565b6100dc9054610bdc565b6100dc6033610be8565b6100dc6103c85f610594565b610c1e6100dc91610c165f90565b506034610507565b610524565b610c3c610c366100dc9263ffffffff1690565b60e01b90565b6001600160e01b03191690565b6001600160a01b0390911681526040810192916100ce9160200152565b6101a990610563565b6001600160a01b0390911681526040810192916100ce9160200190610c66565b610cc091610ccf610ca363095ea7b3610c23565b94610cad60405190565b948591846004602085018a815201610c49565b6020820181038252038461033f565b610cdc6106fd8484610edd565b610ce7575b50505050565b6004610d20610d2b95610d115f610d2695610d0160405190565b9586946020860190815201610c6f565b6020820181038252038261033f565b82610f6f565b610f6f565b5f808080610ce1565b6100ce90610d40610fda565b6100ce9061101b565b6100ce90610d34565b6100d06100dc6100dc9290565b6100dc90610d52565b15610d6f57565b63f6b2911f60e01b5f908152600490fd5b6100ce90610da0610d936100d05f610d5f565b916001600160a01b031690565b1415610d68565b905051906100ce826100b8565b906020828203126100b4576100dc91610da7565b610e186020610ddd6103c86103c86033610594565b610de630610322565b90610df060405190565b938492839182916370a0823160e01b8352600483016001600160a01b03909116815260200190565b03915afa90811561044f575f91610e2d575090565b6100dc915060203d602011610e4f575b610e47818361033f565b810190610db4565b503d610e3d565b906100ce610e6360405190565b928361033f565b67ffffffffffffffff811161036157602090601f01601f19160190565b90610e99610e9483610e6a565b610e56565b918252565b3d15610eb757610ead3d610e87565b903d5f602084013e565b606090565b905051906100ce826100fb565b906020828203126100b4576100dc91610ebc565b5f610ef08192610eea5f90565b50610322565b9260208151910182855af190610f04610e9e565b82610f27575b5081610f14575090565b90503b610f236108065f610563565b1190565b909150610f32815190565b610f3e6108065f610563565b14908115610f4f575b50905f610f0a565b610f6991506020610f5e825190565b818301019101610ec9565b5f610f47565b610f7b610f8291610322565b9182611024565b8051610f906108065f610563565b14159081610fc1575b50610fa15750565b635274afe760e01b5f9081526001600160a01b039091166004526024035ffd5b610fd49150806020610f5e6106fd935190565b5f610f99565b610fe56106fd611037565b610feb57565b631afcd79f60e31b5f908152600490fd5b6100ce90611008610fda565b6100ce9061101581610d80565b5f610829565b6100ce90610ffc565b6100dc916110315f610563565b91611060565b6100dc7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00610615565b9192919061106d30610322565b9380853110611099576100dc939450815f92916020849351920190855af1611093610e9e565b916110b7565b63cd78605960e01b5f9081526001600160a01b038616600452602490fd5b906110c25750611114565b81516110d06108065f610563565b14806110ff575b6110df575090565b639996b31560e01b5f9081526001600160a01b039091166004526024035ffd5b50803b61110e6108065f610563565b146110d7565b80516111226108065f610563565b111561113057805190602001fd5b630a12f52160e11b5f908152600490fdfea2646970667358221220cb8460e1c918db797fe04ca18c8186de4b85a77e05397a95f1a75e56b23cf0b964736f6c634300081c0033