1 tx
15 calls
constructor
constructor(address token, address router_, address vault_)
functions
accountToDepositInfo
viewfunction accountToDepositInfo(address) view returns (uint256 depositTokenAmount, uint256 rewardTokenAmount)
depositToken
viewfunction depositToken() view returns (address)
getInterestGain
viewfunction getInterestGain(address account) view returns (uint256)
owner
viewfunction owner() view returns (address)
rewardToken
viewfunction rewardToken() view returns (address)
router
viewfunction router() view returns (address)
totalShares
viewfunction totalShares() view returns (uint256)
vault
viewfunction vault() view returns (address)
deposit
nonpayablefunction deposit(address account, uint256 amount) returns (tuple depositInfo)
renounceOwnership
nonpayablefunction renounceOwnership()
rescueTokens
nonpayablefunction rescueTokens(address[] tokens)
setRouter
nonpayablefunction setRouter(address router_)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdraw
nonpayablefunction withdraw(address account) returns (tuple withdrawInfo)
events
Deposit
event Deposit(address account, uint256 depositAmount, uint256 rewardTokenAmount)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
RouterUpdated
event RouterUpdated(address previous, address current)
Withdraw
event Withdraw(address account, uint256 withdrawAmount, uint256 rewardTokenBurnAmount)
errors
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
creation bytecode
0x608060405234801561001057600080fd5b506040516111ff3803806111ff83398101604081905261002f916102ec565b3383836001600160a01b0382166100825760405162461bcd60e51b8152602060048201526012602482015271546f6b656e207a65726f206164647265737360701b60448201526064015b60405180910390fd5b6001600160a01b0381166100d85760405162461bcd60e51b815260206004820152601360248201527f526f75746572207a65726f2061646472657373000000000000000000000000006044820152606401610079565b600180546001600160a01b03199081166001600160a01b039485161790915560008054909116918316919091179055811661012957604051631e4fbdf760e01b815260006004820152602401610079565b6101328161027e565b506001600160a01b03811661017e5760405162461bcd60e51b81526020600482015260126024820152715661756c74207a65726f206164647265737360701b6044820152606401610079565b600580546001600160a01b0319166001600160a01b03838116918217909255604080516338d52e0f60e01b81529051928616926338d52e0f916004808201926020929091908290030181865afa1580156101dc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610200919061032f565b6001600160a01b0316146102565760405162461bcd60e51b815260206004820152601460248201527f5661756c74206173736574206d69736d617463680000000000000000000000006044820152606401610079565b600280546001600160a01b0319166001600160a01b0392909216919091179055506103519050565b600480546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b80516001600160a01b03811681146102e757600080fd5b919050565b60008060006060848603121561030157600080fd5b61030a846102d0565b9250610318602085016102d0565b9150610326604085016102d0565b90509250925092565b60006020828403121561034157600080fd5b61034a826102d0565b9392505050565b610e9f806103606000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063c89039c51161008c578063f7c618c111610066578063f7c618c114610225578063f887ea4014610238578063f89f47c31461024b578063fbfa77cf1461025e57600080fd5b8063c89039c5146101ec578063e144cca8146101ff578063f2fde38b1461021257600080fd5b806356c2ad69116100c857806356c2ad691461016e578063715018a6146101aa5780638da5cb5b146101b4578063c0d78655146101d957600080fd5b80633a98ef39146100ef57806347e7ef241461010b57806351cff8d914610139575b600080fd5b6100f860065481565b6040519081526020015b60405180910390f35b61011e610119366004610cf8565b610271565b60408051825181526020928301519281019290925201610102565b61014c610147366004610d22565b61039f565b6040805182518152602080840151908201529181015190820152606001610102565b61019561017c366004610d22565b6003602052600090815260409020805460019091015482565b60408051928352602083019190915201610102565b6101b2610574565b005b6004546001600160a01b03165b6040516001600160a01b039091168152602001610102565b6101b26101e7366004610d22565b610588565b6001546101c1906001600160a01b031681565b6101b261020d366004610d44565b610670565b6101b2610220366004610d22565b6108cf565b6002546101c1906001600160a01b031681565b6000546101c1906001600160a01b031681565b6100f8610259366004610d22565b61090d565b6005546101c1906001600160a01b031681565b60408051808201909152600080825260208201526000546001600160a01b0316336001600160a01b03161480156102b357506000546001600160a01b03163b15155b6102d85760405162461bcd60e51b81526004016102cf90610dbb565b60405180910390fd5b6102e2838361091e565b80516001600160a01b03851660009081526003602052604081208054939450919261030e908490610df2565b90915550506020808201516001600160a01b0385166000908152600390925260408220600101805491929091610345908490610df2565b90915550508051602080830151604080516001600160a01b0388168152928301939093528183015290517f90890809c654f11d6e72a28fa60149770a0d11ec6c92319d6ceb2bb0a4ea1a159181900360600190a192915050565b6103c360405180606001604052806000815260200160008152602001600081525090565b6000546001600160a01b0316336001600160a01b03161480156103f157506000546001600160a01b03163b15155b61040d5760405162461bcd60e51b81526004016102cf90610dbb565b6001600160a01b03821660009081526003602052604090205461045f5760405162461bcd60e51b815260206004820152600a602482015269139bc819195c1bdcda5d60b21b60448201526064016102cf565b61046882610a92565b6001600160a01b038084166000908152600360209081526040822082815560019081018390555491549084015184519495509183169363095ea7b39391909116916104b291610df2565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af11580156104fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105219190610e05565b50805160408083015181516001600160a01b0386168152602081019390935282820152517ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5689181900360600190a1919050565b61057c610ba0565b6105866000610bcd565b565b6000546001600160a01b0316336001600160a01b0316146105bb5760405162461bcd60e51b81526004016102cf90610dbb565b6001600160a01b0381166106075760405162461bcd60e51b8152602060048201526013602482015272526f75746572207a65726f206164647265737360681b60448201526064016102cf565b600054604080516001600160a01b03928316815291831660208301527f02dc5c233404867c793b749c6d644beb2277536d18a7e7974d3f238e4c6f1684910160405180910390a1600080546001600160a01b0319166001600160a01b0392909216919091179055565b610678610ba0565b60005b818110156108ca57600083838381811061069757610697610e27565b90506020020160208101906106ac9190610d22565b6040516370a0823160e01b81523060048201529091506000906001600160a01b038316906370a0823190602401602060405180830381865afa1580156106f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071a9190610e3d565b905080156108c0576002546001600160a01b039081169083160361082c5760065481116107895760405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f74207769746864726177207573657220736861726573000000000060448201526064016102cf565b816001600160a01b031663a9059cbb6107aa6004546001600160a01b031690565b6006546107b79085610e56565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610802573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108269190610e05565b506108c0565b816001600160a01b031663a9059cbb61084d6004546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af115801561089a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108be9190610e05565b505b505060010161067b565b505050565b6108d7610ba0565b6001600160a01b03811661090157604051631e4fbdf760e01b8152600060048201526024016102cf565b61090a81610bcd565b50565b600061091882610c1f565b92915050565b6040805180820190915260008082526020820152600082116109715760405162461bcd60e51b815260206004820152600c60248201526b16995c9bc819195c1bdcda5d60a21b60448201526064016102cf565b60015460055460405163095ea7b360e01b81526001600160a01b0391821660048201526024810185905291169063095ea7b3906044016020604051808303816000875af11580156109c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ea9190610e05565b50600554604051636e553f6560e01b8152600481018490523060248201526000916001600160a01b031690636e553f65906044016020604051808303816000875af1158015610a3d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a619190610e3d565b90508060066000828254610a759190610df2565b909155505060408051808201909152928352602083015250919050565b610ab660405180606001604052806000815260200160008152602001600081525090565b6001600160a01b03828116600090815260036020526040808220600181015490546005549251635d043b2960e11b815260048101839052306024820181905260448201529194909392169063ba087652906064016020604051808303816000875af1158015610b29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4d9190610e3d565b90508260066000828254610b619190610e56565b909155506000905082821115610b7e57610b7b8383610e56565b90505b6040805160608101825292835260208301919091528101929092525092915050565b6004546001600160a01b031633146105865760405163118cdaa760e01b81523360048201526024016102cf565b600480546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0381811660009081526003602090815260408083208151808301835281548152600190910154928101839052600554915163266d6a8360e11b8152600481019390935292938492911690634cdad50690602401602060405180830381865afa158015610c96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cba9190610e3d565b8251909150811115610cd5578151610cd29082610e56565b92505b5050919050565b80356001600160a01b0381168114610cf357600080fd5b919050565b60008060408385031215610d0b57600080fd5b610d1483610cdc565b946020939093013593505050565b600060208284031215610d3457600080fd5b610d3d82610cdc565b9392505050565b60008060208385031215610d5757600080fd5b823567ffffffffffffffff811115610d6e57600080fd5b8301601f81018513610d7f57600080fd5b803567ffffffffffffffff811115610d9657600080fd5b8560208260051b8401011115610dab57600080fd5b6020919091019590945092505050565b60208082526007908201526610b937baba32b960c91b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561091857610918610ddc565b600060208284031215610e1757600080fd5b81518015158114610d3d57600080fd5b634e487b7160e01b600052603260045260246000fd5b600060208284031215610e4f57600080fd5b5051919050565b8181038181111561091857610918610ddc56fea2646970667358221220c8f9e3b665e8474c2db8c305dcf33d0a1b38a74ba3429f68e5ea03dd6ca5458c64736f6c634300081c0033000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000bf900a1f0496ccfef8ee7e210a345b91263ecc3e0000000000000000000000009a8bc3b04b7f3d87cfc09ba407dced575f2d61d8