0 txs
0 calls
constructor
constructor()
functions
getPendingRewards
viewfunction getPendingRewards() view returns (uint256)
getPrincipalDeposits
viewfunction getPrincipalDeposits() view returns (uint256)
getRewards
viewfunction getRewards() view returns (uint256)
getTotalDeposits
viewfunction getTotalDeposits() view returns (uint256)
getUnclaimedRewards
viewfunction getUnclaimedRewards() view returns (uint256)
operator
viewfunction operator() view returns (address)
owner
viewfunction owner() view returns (address)
pfAlertsController
viewfunction pfAlertsController() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
rewardsController
viewfunction rewardsController() view returns (address)
rewardsReceiver
viewfunction rewardsReceiver() view returns (address)
stakeController
viewfunction stakeController() view returns (address)
token
viewfunction token() view returns (address)
trackedTotalDeposits
viewfunction trackedTotalDeposits() view returns (uint128)
vaultController
viewfunction vaultController() view returns (address)
withdraw
viewfunction withdraw(uint256) view
__Vault_init
nonpayablefunction __Vault_init(address _token, address _vaultController, address _stakeController, address _rewardsController)
deposit
nonpayablefunction deposit(uint256 _amount)
initialize
nonpayablefunction initialize(address _token, address _vaultController, address _stakeController, address _rewardsController, address _pfAlertsController, address _operator, address _rewardsReceiver)
raiseAlert
nonpayablefunction raiseAlert(address _feed)
renounceOwnership
nonpayablefunction renounceOwnership()
setOperator
nonpayablefunction setOperator(address _operator)
setRewardsReceiver
nonpayablefunction setRewardsReceiver(address _rewardsReceiver)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateDeposits
nonpayablefunction updateDeposits(uint256 _minRewards, address _rewardsReceiver) returns (uint256, uint256)
upgradeTo
nonpayablefunction upgradeTo(address newImplementation)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
withdrawRewards
nonpayablefunction withdrawRewards()
events
AdminChanged
event AdminChanged(address previousAdmin, address newAdmin)
AlertRaised
event AlertRaised()
BeaconUpgraded
event BeaconUpgraded(address indexed beacon)
Initialized
event Initialized(uint8 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
SetRewardsReceiver
event SetRewardsReceiver(address indexed rewardsReceiver)
Upgraded
event Upgraded(address indexed implementation)
WithdrawRewards
event WithdrawRewards(address indexed receiver, uint256 amount)
errors
OnlyOperator
error OnlyOperator()
OnlyRewardsReceiver
error OnlyRewardsReceiver()
OnlyVaultController
error OnlyVaultController()
OperatorAlreadySet
error OperatorAlreadySet()
ZeroAddress
error ZeroAddress()
creation bytecode
0x60a06040523060805234801561001457600080fd5b5061001d610022565b6100e1565b600054610100900460ff161561008e5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116146100df576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6080516124176200011960003960008181610f1201528181610f5201528181610ff101528181611031015261114b01526124176000f3fe6080604052600436106101b75760003560e01c80635f36b048116100ec578063c7b8981c1161008a578063eb63421011610064578063eb634210146104af578063f2fde38b146104cf578063fc0c546a146104ef578063fca11cb81461050f57600080fd5b8063c7b8981c14610465578063d7f0d8f21461047a578063d9621f9e1461049a57600080fd5b80638da5cb5b116100c65780638da5cb5b146103cf578063989d26d0146103ed578063b3ab15fb14610425578063b6b55f251461044557600080fd5b80635f36b0481461037a5780636bb65f531461039a578063715018a6146103ba57600080fd5b80632e1a7d4d116101595780634f1ef286116101335780634f1ef286146102fa5780634fdff26a1461030d57806352d1902d1461032d578063570ca7351461034257600080fd5b80632e1a7d4d1461029a57806335876476146102ba5780633659cfe6146102da57600080fd5b8063168a482211610195578063168a48221461021b5780631ae665a514610230578063244cd47d14610245578063261958261461027a57600080fd5b80630572b0cc146101bc578063087a43c1146101e45780631623025714610206575b600080fd5b3480156101c857600080fd5b506101d161052f565b6040519081526020015b60405180910390f35b3480156101f057600080fd5b506102046101ff366004611ed7565b6105a2565b005b34801561021257600080fd5b506101d1610807565b34801561022757600080fd5b506101d1610891565b34801561023c57600080fd5b506101d16108ad565b34801561025157600080fd5b50610265610260366004611ef2565b610922565b604080519283526020830191909152016101db565b34801561028657600080fd5b50610204610295366004611ed7565b610b95565b3480156102a657600080fd5b506102046102b5366004611f1e565b610c8b565b3480156102c657600080fd5b506102046102d5366004611f37565b610d03565b3480156102e657600080fd5b506102046102f5366004611ed7565b610f08565b610204610308366004611fd3565b610fe7565b34801561031957600080fd5b50610204610328366004612095565b6110b7565b34801561033957600080fd5b506101d161113e565b34801561034e57600080fd5b5060d654610362906001600160a01b031681565b6040516001600160a01b0390911681526020016101db565b34801561038657600080fd5b5060ca54610362906001600160a01b031681565b3480156103a657600080fd5b5060cc54610362906001600160a01b031681565b3480156103c657600080fd5b506102046111f1565b3480156103db57600080fd5b506097546001600160a01b0316610362565b3480156103f957600080fd5b5060d95461040d906001600160801b031681565b6040516001600160801b0390911681526020016101db565b34801561043157600080fd5b50610204610440366004611ed7565b611205565b34801561045157600080fd5b50610204610460366004611f1e565b611280565b34801561047157600080fd5b50610204611391565b34801561048657600080fd5b5060d854610362906001600160a01b031681565b3480156104a657600080fd5b506101d1611593565b3480156104bb57600080fd5b5060cb54610362906001600160a01b031681565b3480156104db57600080fd5b506102046104ea366004611ed7565b611652565b3480156104fb57600080fd5b5060c954610362906001600160a01b031681565b34801561051b57600080fd5b5060d754610362906001600160a01b031681565b60cc54604051630c00007b60e41b81523060048201526000916001600160a01b03169063c00007b0906024015b602060405180830381865afa158015610579573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059d91906120e9565b905090565b60d6546001600160a01b031633146105cd576040516327e1f1e560e01b815260040160405180910390fd5b60c9546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610616573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063a91906120e9565b60d85460405163087a43c160e01b81526001600160a01b03858116600483015292935091169063087a43c190602401600060405180830381600087803b15801561068357600080fd5b505af1158015610697573d6000803e3d6000fd5b505060c9546040516370a0823160e01b8152306004820152600093508492506001600160a01b03909116906370a0823190602401602060405180830381865afa1580156106e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070c91906120e9565b6107169190612118565b9050600061271060ca60009054906101000a90046001600160a01b03166001600160a01b03166371cf77e46040518163ffffffff1660e01b8152600401602060405180830381865afa158015610770573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079491906120e9565b61079e908461212f565b6107a8919061214e565b60ca549091506107d8906001600160a01b03166107c58385612118565b60c9546001600160a01b031691906116c8565b6040517f6cd77a7fe772370fc98b53ff4de71c89b93093066577d1e5c50b622316d58ec190600090a150505050565b60c9546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610850573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061087491906120e9565b60d95461059d9190600160801b90046001600160801b0316612170565b600061089b61052f565b6108a36108ad565b61059d9190612170565b60cb546040516316cd573760e31b81523060048201526000916001600160a01b03169063b66ab9b890602401602060405180830381865afa1580156108f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091a91906120e9565b6108a3611730565b60ca5460009081906001600160a01b0316331461095257604051632b30c69960e11b815260040160405180910390fd5b600061095c6108ad565b9050600061096861052f565b905060006109768284612170565b60d954909150600090610992906001600160801b031683612188565b9050600080821315610a9c5760ca5460408051631c73ddf960e21b81529051612710926001600160a01b0316916371cf77e49160048083019260209291908290030181865afa1580156109e9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a0d91906120e9565b610a17908461212f565b610a21919061214e565b9050610a2c81611761565b60d98054601090610a4e908490600160801b90046001600160801b03166121c7565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550610a7b83611761565b60d980546001600160801b0319166001600160801b03929092169190911790555b8815801590610aab5750888410155b15610b865760cc60009054906101000a90046001600160a01b03166001600160a01b031663b88a802f6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b50505050610b2184611761565b60d98054600090610b3c9084906001600160801b03166121f2565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508383610b6c9190612118565b60c954909350610b86906001600160a01b031689866116c8565b91989197509095505050505050565b60d7546001600160a01b031615801590610bba575060d7546001600160a01b03163314155b15610bd85760405163143f1d3f60e11b815260040160405180910390fd5b60d7546001600160a01b0316158015610bfc57506097546001600160a01b03163314155b15610c1a5760405163143f1d3f60e11b815260040160405180910390fd5b6001600160a01b038116610c415760405163d92e233d60e01b815260040160405180910390fd5b60d780546001600160a01b0319166001600160a01b0383169081179091556040517f8c06658a0834578bc646e445d73b202af15a1166e3e4cf588afbcaeafe33263490600090a250565b60ca546001600160a01b03163314610cb657604051632b30c69960e11b815260040160405180910390fd5b60405162461bcd60e51b815260206004820152601f60248201527f7769746864726177616c73206e6f742079657420696d706c656d656e7465640060448201526064015b60405180910390fd5b600054600390610100900460ff16158015610d25575060005460ff8083169116105b610d885760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610cfa565b6000805461ffff191660ff83161761010017905560d6546001600160a01b0316610dc657610db8888888886110b7565b610dc183611205565b610e8d565b60cb54604051638932a90d60e01b815260206004820152600060248201526001600160a01b0390911690638932a90d90604401600060405180830381600087803b158015610e1357600080fd5b505af1158015610e27573d6000803e3d6000fd5b505060cb80546001600160a01b03808b166001600160a01b03199283161790925560cc8054928a169290911691909117905550610e6c9050610e67610891565b611761565b60d980546001600160801b0319166001600160801b03929092169190911790555b60d880546001600160a01b038681166001600160a01b03199283161790925560d78054928516929091169190911790556000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050505050565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610f505760405162461bcd60e51b8152600401610cfa9061221a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610f9960008051602061239b833981519152546001600160a01b031690565b6001600160a01b031614610fbf5760405162461bcd60e51b8152600401610cfa90612266565b610fc8816117ce565b60408051600080825260208201909252610fe4918391906117d6565b50565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361102f5760405162461bcd60e51b8152600401610cfa9061221a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661107860008051602061239b833981519152546001600160a01b031690565b6001600160a01b03161461109e5760405162461bcd60e51b8152600401610cfa90612266565b6110a7826117ce565b6110b3828260016117d6565b5050565b600054610100900460ff166110de5760405162461bcd60e51b8152600401610cfa906122b2565b6110e6611941565b6110ee611970565b60c980546001600160a01b039586166001600160a01b03199182161790915560ca80549486169482169490941790935560cb80549285169284169290921790915560cc8054919093169116179055565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146111de5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610cfa565b5060008051602061239b83398151915290565b6111f9611997565b61120360006119f1565b565b61120d611997565b60d6546001600160a01b0316156112375760405163c4142b4160e01b815260040160405180910390fd5b6001600160a01b03811661125e5760405163d92e233d60e01b815260040160405180910390fd5b60d680546001600160a01b0319166001600160a01b0392909216919091179055565b60ca546001600160a01b031633146112ab57604051632b30c69960e11b815260040160405180910390fd5b6112b481611761565b60d980546000906112cf9084906001600160801b03166121c7565b82546001600160801b039182166101009390930a92830291909202199091161790555060c95461130a906001600160a01b0316333084611a43565b60c95460cb54604051630200057560e51b81526001600160a01b039182166004820152602481018490526060604482015260006064820152911690634000aea0906084016020604051808303816000875af115801561136d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b391906122fd565b60d7546001600160a01b031633146113bc5760405163143f1d3f60e11b815260040160405180910390fd5b60006113c6610807565b60c9546040516370a0823160e01b81523060048201529192506000916001600160a01b03909116906370a0823190602401602060405180830381865afa158015611414573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061143891906120e9565b60ca5460d7549192506000916001600160a01b039182169163506cd18791166114618587612118565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af11580156114ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d091906120e9565b90506114db81611761565b60d980546010906114fd908490600160801b90046001600160801b03166121f2565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550816000146115465760d75460c954611546916001600160a01b039182169116846116c8565b60d7546001600160a01b03167faa1377f7ec93c239e959efa811f7b8554c036fd7a706c23e58024626a8f3db9661157d8484612170565b60405190815260200160405180910390a2505050565b60d95460009081906001600160801b03166115ac610891565b6115b69190612188565b9050600081131561164a5760ca5460408051631c73ddf960e21b81529051612710926001600160a01b0316916371cf77e49160048083019260209291908290030181865afa15801561160c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061163091906120e9565b61163a908361212f565b611644919061214e565b91505090565b600091505090565b61165a611997565b6001600160a01b0381166116bf5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cfa565b610fe4816119f1565b6040516001600160a01b03831660248201526044810182905261172b90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611a81565b505050565b60cb54604051630706983f60e51b81523060048201526000916001600160a01b03169063e0d307e09060240161055c565b60006001600160801b038211156117ca5760405162461bcd60e51b815260206004820152602760248201527f53616665436173743a2076616c756520646f65736e27742066697420696e20316044820152663238206269747360c81b6064820152608401610cfa565b5090565b610fe4611997565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156118095761172b83611b56565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611863575060408051601f3d908101601f19168201909252611860918101906120e9565b60015b6118c65760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610cfa565b60008051602061239b83398151915281146119355760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610cfa565b5061172b838383611bf2565b600054610100900460ff166119685760405162461bcd60e51b8152600401610cfa906122b2565b611203611c17565b600054610100900460ff166112035760405162461bcd60e51b8152600401610cfa906122b2565b6097546001600160a01b031633146112035760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610cfa565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040516001600160a01b0380851660248301528316604482015260648101829052611a7b9085906323b872dd60e01b906084016116f4565b50505050565b6000611ad6826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611c479092919063ffffffff16565b9050805160001480611af7575080806020019051810190611af791906122fd565b61172b5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610cfa565b6001600160a01b0381163b611bc35760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610cfa565b60008051602061239b83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b611bfb83611c5e565b600082511180611c085750805b1561172b57611a7b8383611c9e565b600054610100900460ff16611c3e5760405162461bcd60e51b8152600401610cfa906122b2565b611203336119f1565b6060611c568484600085611cca565b949350505050565b611c6781611b56565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060611cc383836040518060600160405280602781526020016123bb60279139611da5565b9392505050565b606082471015611d2b5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610cfa565b600080866001600160a01b03168587604051611d47919061234b565b60006040518083038185875af1925050503d8060008114611d84576040519150601f19603f3d011682016040523d82523d6000602084013e611d89565b606091505b5091509150611d9a87838387611e1d565b979650505050505050565b6060600080856001600160a01b031685604051611dc2919061234b565b600060405180830381855af49150503d8060008114611dfd576040519150601f19603f3d011682016040523d82523d6000602084013e611e02565b606091505b5091509150611e1386838387611e1d565b9695505050505050565b60608315611e8c578251600003611e85576001600160a01b0385163b611e855760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610cfa565b5081611c56565b611c568383815115611ea15781518083602001fd5b8060405162461bcd60e51b8152600401610cfa9190612367565b80356001600160a01b0381168114611ed257600080fd5b919050565b600060208284031215611ee957600080fd5b611cc382611ebb565b60008060408385031215611f0557600080fd5b82359150611f1560208401611ebb565b90509250929050565b600060208284031215611f3057600080fd5b5035919050565b600080600080600080600060e0888a031215611f5257600080fd5b611f5b88611ebb565b9650611f6960208901611ebb565b9550611f7760408901611ebb565b9450611f8560608901611ebb565b9350611f9360808901611ebb565b9250611fa160a08901611ebb565b9150611faf60c08901611ebb565b905092959891949750929550565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215611fe657600080fd5b611fef83611ebb565b9150602083013567ffffffffffffffff8082111561200c57600080fd5b818501915085601f83011261202057600080fd5b81358181111561203257612032611fbd565b604051601f8201601f19908116603f0116810190838211818310171561205a5761205a611fbd565b8160405282815288602084870101111561207357600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600080600080608085870312156120ab57600080fd5b6120b485611ebb565b93506120c260208601611ebb565b92506120d060408601611ebb565b91506120de60608601611ebb565b905092959194509250565b6000602082840312156120fb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b60008282101561212a5761212a612102565b500390565b600081600019048311821515161561214957612149612102565b500290565b60008261216b57634e487b7160e01b600052601260045260246000fd5b500490565b6000821982111561218357612183612102565b500190565b60008083128015600160ff1b8501841216156121a6576121a6612102565b6001600160ff1b03840183138116156121c1576121c1612102565b50500390565b60006001600160801b038083168185168083038211156121e9576121e9612102565b01949350505050565b60006001600160801b038381169083168181101561221257612212612102565b039392505050565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006020828403121561230f57600080fd5b81518015158114611cc357600080fd5b60005b8381101561233a578181015183820152602001612322565b83811115611a7b5750506000910152565b6000825161235d81846020870161231f565b9190910192915050565b602081526000825180602084015261238681604085016020870161231f565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122076103ea1fc2a64bd627ea9784671b24154bb7ac3e6d632da20491066a2b192c364736f6c634300080f0033