0 txs
0 calls
constructor
No constructor.
functions
getCurrentRebaseStateEth
viewfunction getCurrentRebaseStateEth() view returns (uint8)
getCurrentRebaseStateUsd
viewfunction getCurrentRebaseStateUsd() view returns (uint8)
getTokenDeployedAmounts
viewfunction getTokenDeployedAmounts(address token) view returns (tuple[])
getTokenWithdrawalAmounts
viewfunction getTokenWithdrawalAmounts(address token) view returns (tuple[])
OETH_ADDRESS
viewfunction OETH_ADDRESS() view returns (address)
OETH_HARVESTER
viewfunction OETH_HARVESTER() view returns (address)
OGV_REWARDS_SOURCE
viewfunction OGV_REWARDS_SOURCE() view returns (address)
OUSD_ADDRESS
viewfunction OUSD_ADDRESS() view returns (address)
OUSD_HARVESTER
viewfunction OUSD_HARVESTER() view returns (address)
owner
viewfunction owner() view returns (address)
previewRewards
viewfunction previewRewards() view returns (uint256)
collectRewards
nonpayablefunction collectRewards() returns (uint256)
computeRewardsEthForEveryone
nonpayablefunction computeRewardsEthForEveryone(address strategyAddr)
computeRewardsUsdForEveryone
nonpayablefunction computeRewardsUsdForEveryone(address strategyAddr)
deposit
nonpayablefunction deposit(address token, uint256 amount)
depositETH
payablefunction depositETH() payable
rebaseOptInEth
nonpayablefunction rebaseOptInEth()
rebaseOptInUsd
nonpayablefunction rebaseOptInUsd()
rebaseOptOutEth
nonpayablefunction rebaseOptOutEth()
rebaseOptOutUsd
nonpayablefunction rebaseOptOutUsd()
setOperator
nonpayablefunction setOperator(address operatorAddr)
setOracleRegistry
nonpayablefunction setOracleRegistry(address oracleRegistryAddr)
setTokenRegistry
nonpayablefunction setTokenRegistry(address tokenRegistryAddr)
swap
payablefunction swap(address srcToken, address destToken, uint256 srcAmount, uint256 minDestAmountOut, bytes callData) payable
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdraw
nonpayablefunction withdraw(address token, uint256 amount)
withdrawETH
nonpayablefunction withdrawETH(uint256 amount)
withdrawToOwner
nonpayablefunction withdrawToOwner(address token, uint256 amount)
events
Deposit
event Deposit(address indexed account, uint256 amount)
DepositETH
event DepositETH(address account, uint256 amount)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
SetOracleRegistry
event SetOracleRegistry(address oracleRegistry)
SetTokenRegistry
event SetTokenRegistry(address tokenRegistry)
Withdraw
event Withdraw(address indexed account, uint256 amount)
WithdrawETH
event WithdrawETH(address account, uint256 amount)
WithdrawToOwner
event WithdrawToOwner(address token, uint256 amount)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b5060008054336001600160a01b031991821681178355600180556002805490921617905561246c90819061004490396000f3fe6080604052600436106101bb5760003560e01c80638165354e116100ec578063e443a4831161008a578063f14210a611610064578063f14210a6146104d6578063f2fde38b146104f6578063f3fef3a314610516578063f6326fb31461053657600080fd5b8063e443a48314610479578063e8b964bc14610499578063ef518a4b146104ae57600080fd5b8063b3ab15fb116100c6578063b3ab15fb14610407578063ceb73b7f14610427578063d54021ae1461044f578063e0d801dd1461046457600080fd5b80638165354e146103a75780638da5cb5b146103c757806397ea951a146103e757600080fd5b806347c62a0d1161015957806354453b1d1161013357806354453b1d1461033257806366c990111461034757806370bb45b31461036f5780637c91d9241461039257600080fd5b806347c62a0d146102dd57806347e7ef24146102fd578063495d77441461031d57600080fd5b806322fdd1951161019557806322fdd195146102615780632506c018146102885780632d6b8e7e1461029d57806335a5af92146102bd57600080fd5b806306eff2fb146101c7578063123b2a401461020c578063175f1c601461023457600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101ef732a8e1e676ec238d8a992307b495b45b3feaa5e8681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561021857600080fd5b506101ef73856c4efb76c1d1ae02e20ceb03a2a6a08b0b8dc381565b34801561024057600080fd5b5061025461024f366004611f5f565b61053e565b6040516102039190611f83565b34801561026d57600080fd5b506102766105d1565b60405160ff9091168152602001610203565b61029b610296366004611ff2565b61064d565b005b3480156102a957600080fd5b5061029b6102b8366004611f5f565b6106c1565b3480156102c957600080fd5b5061029b6102d8366004611f5f565b610782565b3480156102e957600080fd5b5061029b6102f83660046120dc565b61080f565b34801561030957600080fd5b5061029b6103183660046120dc565b610858565b34801561032957600080fd5b5061029b610894565b34801561033e57600080fd5b5061029b61094d565b34801561035357600080fd5b506101ef7321fb5812d70b3396880d30e90d9e5c1202266c8981565b34801561037b57600080fd5b506103846109e3565b604051908152602001610203565b34801561039e57600080fd5b5061029b610ab2565b3480156103b357600080fd5b5061029b6103c2366004611f5f565b610b48565b3480156103d357600080fd5b506000546101ef906001600160a01b031681565b3480156103f357600080fd5b5061029b610402366004611f5f565b610bc8565b34801561041357600080fd5b5061029b610422366004611f5f565b610c4f565b34801561043357600080fd5b506101ef737d82e86cf1496f9485a8ea04012afeb3c748939781565b34801561045b57600080fd5b5061029b610ca3565b34801561047057600080fd5b50610384610d39565b34801561048557600080fd5b50610254610494366004611f5f565b610db1565b3480156104a557600080fd5b50610276610e36565b3480156104ba57600080fd5b506101ef730d017afa83eace9f10a8ec5b6e13941664a6785c81565b3480156104e257600080fd5b5061029b6104f1366004612108565b610e70565b34801561050257600080fd5b5061029b610511366004611f5f565b611000565b34801561052257600080fd5b5061029b6105313660046120dc565b6110c7565b61029b611118565b6001600160a01b0381166000908152600560209081526040808320805482518185028101850190935280835260609492939192909184015b828210156105c65783829060005260206000209060030201604051806060016040529081600082015481526020016001820154815260200160028201548152505081526020019060010190610576565b505050509050919050565b6040516322b7714360e11b815230600482015260009073856c4efb76c1d1ae02e20ceb03a2a6a08b0b8dc39063456ee286906024015b602060405180830381865afa158015610624573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106489190612121565b905090565b61065561127c565b6002546001600160a01b031633146106a45760405162461bcd60e51b815260206004820152600d60248201526c27b7363c9027b832b930ba37b960991b60448201526064015b60405180910390fd5b6106b185858585856112d6565b6106ba60018055565b5050505050565b6106c961127c565b6000546001600160a01b03163314806106ec57506002546001600160a01b031633145b6107085760405162461bcd60e51b815260040161069b90612144565b60405163548f5ae560e01b81526001600160a01b0382166004820152730d017afa83eace9f10a8ec5b6e13941664a6785c9063548f5ae5906024015b600060405180830381600087803b15801561075e57600080fd5b505af1158015610772573d6000803e3d6000fd5b5050505061077f60018055565b50565b61078a61127c565b6000546001600160a01b031633146107b45760405162461bcd60e51b815260040161069b90612173565b600480546001600160a01b0319166001600160a01b0383169081179091556040519081527f7f221725f2e949e8562bdbb6a6a90a4cc22b96336ba50962357bf3a27dcb4755906020015b60405180910390a161077f60018055565b61081761127c565b6000546001600160a01b031633146108415760405162461bcd60e51b815260040161069b90612173565b61084b82826116b0565b61085460018055565b5050565b61086061127c565b6000546001600160a01b0316331461088a5760405162461bcd60e51b815260040161069b90612173565b61084b828261175e565b61089c61127c565b6000546001600160a01b03163314806108bf57506002546001600160a01b031633145b6108db5760405162461bcd60e51b815260040161069b90612144565b73856c4efb76c1d1ae02e20ceb03a2a6a08b0b8dc36001600160a01b031663c2376dff6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b5050505061094b60018055565b565b61095561127c565b6000546001600160a01b031633148061097857506002546001600160a01b031633145b6109945760405162461bcd60e51b815260040161069b90612144565b73856c4efb76c1d1ae02e20ceb03a2a6a08b0b8dc36001600160a01b031663f51b0fd46040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561092a57600080fd5b60006109ed61127c565b6000546001600160a01b0316331480610a1057506002546001600160a01b031633145b610a2c5760405162461bcd60e51b815260040161069b90612144565b737d82e86cf1496f9485a8ea04012afeb3c74893976001600160a01b03166370bb45b36040518163ffffffff1660e01b81526004016020604051808303816000875af1158015610a80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa49190612196565b9050610aaf60018055565b90565b610aba61127c565b6000546001600160a01b0316331480610add57506002546001600160a01b031633145b610af95760405162461bcd60e51b815260040161069b90612144565b732a8e1e676ec238d8a992307b495b45b3feaa5e866001600160a01b031663f51b0fd46040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561092a57600080fd5b610b5061127c565b6000546001600160a01b03163314610b7a5760405162461bcd60e51b815260040161069b90612173565b600380546001600160a01b0319166001600160a01b0383169081179091556040519081527fd7eea7f547123e0693ad16e2016adde5c4b263f3449dc5e8632ef3463aa3e1e1906020016107fe565b610bd061127c565b6000546001600160a01b0316331480610bf357506002546001600160a01b031633145b610c0f5760405162461bcd60e51b815260040161069b90612144565b60405163548f5ae560e01b81526001600160a01b03821660048201527321fb5812d70b3396880d30e90d9e5c1202266c899063548f5ae590602401610744565b610c5761127c565b6000546001600160a01b03163314610c815760405162461bcd60e51b815260040161069b90612173565b600280546001600160a01b0319166001600160a01b0383161790556001805550565b610cab61127c565b6000546001600160a01b0316331480610cce57506002546001600160a01b031633145b610cea5760405162461bcd60e51b815260040161069b90612144565b732a8e1e676ec238d8a992307b495b45b3feaa5e866001600160a01b031663c2376dff6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561092a57600080fd5b6000737d82e86cf1496f9485a8ea04012afeb3c74893976001600160a01b031663e0d801dd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d8d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106489190612196565b6001600160a01b03811660009081526006602090815260408083208054825181850281018501909352808352606094929391929091840182156105c65783829060005260206000209060030201604051806060016040529081600082015481526020016001820154815260200160028201548152505081526020019060010190610576565b6040516322b7714360e11b8152306004820152600090732a8e1e676ec238d8a992307b495b45b3feaa5e869063456ee28690602401610607565b610e7861127c565b6000546001600160a01b0316331480610e9b57506002546001600160a01b031633145b610eb75760405162461bcd60e51b815260040161069b90612144565b6000610ed773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee83611805565b600660209081527fa2e5aefc6e2cbe2917a296f0fd89c5f915c487c803db1d98eccb43f14012d7118054600181018255600091825283517f88ec43c8aeea0158611154a0f26516f4128e25817fb653416dd76295041a8377600390920291820155918301517f88ec43c8aeea0158611154a0f26516f4128e25817fb653416dd76295041a83788301556040808401517f88ec43c8aeea0158611154a0f26516f4128e25817fb653416dd76295041a837990930192909255905191925033916108fc85150291859190818181858888f19350505050158015610fbc573d6000803e3d6000fd5b5060408051338152602081018490527f566e45b1c8057e725bf62796a7f1d37ae294393cab069725a09daddd1af98b79910160405180910390a15061077f60018055565b6000546001600160a01b0316331461102a5760405162461bcd60e51b815260040161069b90612173565b6001600160a01b03811661106c5760405162461bcd60e51b815260206004820152600960248201526830206164647265737360b81b604482015260640161069b565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6110cf61127c565b6000546001600160a01b03163314806110f257506002546001600160a01b031633145b61110e5760405162461bcd60e51b815260040161069b90612144565b61084b828261194c565b61112061127c565b6000546001600160a01b031633148061114357506002546001600160a01b031633145b61115f5760405162461bcd60e51b815260040161069b90612144565b600061117f73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee34611805565b600560209081527fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7805460018101825560009190915282517f3134d172b0d7dc56c5e2ded6d8c21c8fca286b81b4ff3ea5fa839f5b1d69f74f600390920291820155828201517f3134d172b0d7dc56c5e2ded6d8c21c8fca286b81b4ff3ea5fa839f5b1d69f7508201556040808401517f3134d172b0d7dc56c5e2ded6d8c21c8fca286b81b4ff3ea5fa839f5b1d69f75190920191909155805133815234928101929092529192507fced5d8bf10823804603bba066e4f53aa6e8f6f4be68bf0114cf7a0e52183e4e9910160405180910390a15061094b60018055565b600260015414156112cf5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161069b565b6002600155565b600480546040516327526a0360e01b81526001600160a01b03888116938201939093529116906327526a0390602401602060405180830381865afa158015611322573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134691906121af565b6113825760405162461bcd60e51b815260206004820152600d60248201526c34b73b30b634b2103a37b5b2b760991b604482015260640161069b565b600480546040516327526a0360e01b81526001600160a01b03878116938201939093529116906327526a0390602401602060405180830381865afa1580156113ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f291906121af565b61142e5760405162461bcd60e51b815260206004820152600d60248201526c34b73b30b634b2103a37b5b2b760991b604482015260640161069b565b600073def171fe48cf0115b1d80b88dc8eab59176fee576001600160a01b031663d2c4b5986040518163ffffffff1660e01b8152600401602060405180830381865afa158015611482573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114a691906121d1565b6040516370a0823160e01b81523060048201529091506000906001600160a01b038716906370a0823190602401602060405180830381865afa1580156114f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115149190612196565b905061152a6001600160a01b03881683876119e9565b600073def171fe48cf0115b1d80b88dc8eab59176fee576001600160a01b031684604051611558919061221a565b6000604051808303816000865af19150503d8060008114611595576040519150601f19603f3d011682016040523d82523d6000602084013e61159a565b606091505b50509050806115d95760405162461bcd60e51b815260206004820152600b60248201526a1cddd85c0819985a5b195960aa1b604482015260640161069b565b6040516370a0823160e01b81523060048201526000906001600160a01b038916906370a0823190602401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190612196565b905085611651848361224c565b10156116905760405162461bcd60e51b815260206004820152600e60248201526d736c69707061676520636865636b60901b604482015260640161069b565b6116a56001600160a01b038a168560006119e9565b505050505050505050565b6000546116ca906001600160a01b03848116911683611b36565b60006116d68383611805565b6001600160a01b0384166000818152600660209081526040808320805460018082018355918552938390208651600390950201938455858301519084015584810151600290930192909255815192835282018590529192507f5324e5ca3eab399efb9cff88b357827404aac06c9bebbd13d81f095576581988910160405180910390a1505050565b6117736001600160a01b038316333084611b66565b600061177f8383611805565b6001600160a01b0384166000908152600560209081526040808320805460018082018355918552938390208551600390950201938455848301519084015583810151600290930192909255905184815291925033917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c91015b60405180910390a2505050565b61182960405180606001604052806000815260200160008152602001600081525090565b60006001600160a01b03841673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee146118b657836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561188d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b19190612121565b6118b9565b60125b600354604051636d9af31360e01b81526001600160a01b038781166004830152929350600092611935921690636d9af31390602401602060405180830381865afa15801561190b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192f91906121d1565b83611ba4565b848452426040850152602084015250505b92915050565b6119606001600160a01b0383163383611b36565b600061196c8383611805565b6001600160a01b0384166000908152600660209081526040808320805460018082018355918552938390208551600390950201938455848301519084015583810151600290930192909255905184815291925033917f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a942436491016117f8565b801580611a635750604051636eb1769f60e11b81523060048201526001600160a01b03838116602483015284169063dd62ed3e90604401602060405180830381865afa158015611a3d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a619190612196565b155b611ace5760405162461bcd60e51b815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527520746f206e6f6e2d7a65726f20616c6c6f77616e636560501b606482015260840161069b565b6040516001600160a01b038316602482015260448101829052611b3190849063095ea7b360e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611ceb565b505050565b6040516001600160a01b038316602482015260448101829052611b3190849063a9059cbb60e01b90606401611afa565b6040516001600160a01b0380851660248301528316604482015260648101829052611b9e9085906323b872dd60e01b90608401611afa565b50505050565b6000808390506000816001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015611bea573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c0e9190612282565b5050509150506000826001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c789190612121565b60ff1690508460ff16811115611cb157611c9560ff86168261224c565b611ca090600a6123b6565b611caa90836123c2565b9350611ce2565b8460ff16811015611cde57611cc98160ff871661224c565b611cd490600a6123b6565b611caa90836123e4565b8193505b50505092915050565b6000611d40826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611dbd9092919063ffffffff16565b805190915015611b315780806020019051810190611d5e91906121af565b611b315760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161069b565b6060611dcc8484600085611dd4565b949350505050565b606082471015611e355760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161069b565b600080866001600160a01b03168587604051611e51919061221a565b60006040518083038185875af1925050503d8060008114611e8e576040519150601f19603f3d011682016040523d82523d6000602084013e611e93565b606091505b5091509150611ea487838387611eaf565b979650505050505050565b60608315611f1b578251611f14576001600160a01b0385163b611f145760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161069b565b5081611dcc565b611dcc8383815115611f305781518083602001fd5b8060405162461bcd60e51b815260040161069b9190612403565b6001600160a01b038116811461077f57600080fd5b600060208284031215611f7157600080fd5b8135611f7c81611f4a565b9392505050565b602080825282518282018190526000919060409081850190868401855b82811015611fcf5781518051855286810151878601528501518585015260609093019290850190600101611fa0565b5091979650505050505050565b634e487b7160e01b600052604160045260246000fd5b600080600080600060a0868803121561200a57600080fd5b853561201581611f4a565b9450602086013561202581611f4a565b93506040860135925060608601359150608086013567ffffffffffffffff8082111561205057600080fd5b818801915088601f83011261206457600080fd5b81358181111561207657612076611fdc565b604051601f8201601f19908116603f0116810190838211818310171561209e5761209e611fdc565b816040528281528b60208487010111156120b757600080fd5b8260208601602083013760006020848301015280955050505050509295509295909350565b600080604083850312156120ef57600080fd5b82356120fa81611f4a565b946020939093013593505050565b60006020828403121561211a57600080fd5b5035919050565b60006020828403121561213357600080fd5b815160ff81168114611f7c57600080fd5b6020808252601590820152743737ba1037bbb732b91037b91037b832b930ba37b960591b604082015260600190565b6020808252600990820152683737ba1037bbb732b960b91b604082015260600190565b6000602082840312156121a857600080fd5b5051919050565b6000602082840312156121c157600080fd5b81518015158114611f7c57600080fd5b6000602082840312156121e357600080fd5b8151611f7c81611f4a565b60005b838110156122095781810151838201526020016121f1565b83811115611b9e5750506000910152565b6000825161222c8184602087016121ee565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b60008282101561225e5761225e612236565b500390565b805169ffffffffffffffffffff8116811461227d57600080fd5b919050565b600080600080600060a0868803121561229a57600080fd5b6122a386612263565b94506020860151935060408601519250606086015191506122c660808701612263565b90509295509295909350565b600181815b8085111561230d5781600019048211156122f3576122f3612236565b8085161561230057918102915b93841c93908002906122d7565b509250929050565b60008261232457506001611946565b8161233157506000611946565b816001811461234757600281146123515761236d565b6001915050611946565b60ff84111561236257612362612236565b50506001821b611946565b5060208310610133831016604e8410600b8410161715612390575081810a611946565b61239a83836122d2565b80600019048211156123ae576123ae612236565b029392505050565b6000611f7c8383612315565b6000826123df57634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156123fe576123fe612236565b500290565b60208152600082518060208401526124228160408501602087016121ee565b601f01601f1916919091016040019291505056fea26469706673582212200456f7c54fa809855685cea1d5774c3937ea3a34fe70162f20588d308af7c03864736f6c634300080a0033