2 txs
4 calls
constructor
constructor(address _yVault, address _asset, string _name, uint256 _maxRizPools, uint256 _depositLimit, address _tokenizedStrategyImpl)
functions
availableDepositLimit
viewfunction availableDepositLimit(address _account) view returns (uint256)
availableWithdrawLimit
viewfunction availableWithdrawLimit(address) view returns (uint256)
depositLimit
viewfunction depositLimit() view returns (uint256)
getAllPoolDistributions
viewfunction getAllPoolDistributions() view returns (tuple[])
getPoolDistribution
viewfunction getPoolDistribution(uint256 index) view returns (tuple)
getUiKeeperPoolBalances
viewfunction getUiKeeperPoolBalances() view returns (tuple[])
HALF_FACTOR
viewfunction HALF_FACTOR() view returns (uint256)
MAX_BPS
viewfunction MAX_BPS() view returns (uint256)
maxRizPools
viewfunction maxRizPools() view returns (uint256)
MIN_DEPOSIT
viewfunction MIN_DEPOSIT() view returns (uint256)
tendTrigger
viewfunction tendTrigger() view returns (bool, bytes)
tokenizedStrategyAddress
viewfunction tokenizedStrategyAddress() view returns (address)
VERSION
viewfunction VERSION() view returns (string)
yVault
viewfunction yVault() view returns (address)
deployFunds
nonpayablefunction deployFunds(uint256 _amount)
freeFunds
nonpayablefunction freeFunds(uint256 _amount)
harvestAndReport
nonpayablefunction harvestAndReport() returns (uint256)
rebalancePools
nonpayablefunction rebalancePools(tuple[] _rebalances)
setDepositLimit
nonpayablefunction setDepositLimit(uint256 _depositLimit)
setFullPoolDistributions
nonpayablefunction setFullPoolDistributions(tuple[] newDistros)
shutdownWithdraw
nonpayablefunction shutdownWithdraw(uint256 _amount)
tendThis
nonpayablefunction tendThis(uint256 _totalIdle)
events
DeployedFunds
event DeployedFunds(uint256 amount)
DepositLimitSet
event DepositLimitSet(uint256 depositLimit)
errors
NotSelf
error NotSelf()
YRizStrategy_invalidBPSAmount
error YRizStrategy_invalidBPSAmount()
YRizStrategy_invalidDescendDistribution
error YRizStrategy_invalidDescendDistribution()
YRizStrategy_invalidSumDistribution
error YRizStrategy_invalidSumDistribution()
YRizStrategy_lessThanMinDepositAmount
error YRizStrategy_lessThanMinDepositAmount()
YRizStrategy_missingPoolWithBalance
error YRizStrategy_missingPoolWithBalance(address pool)
YRizStrategy_notAuthorized
error YRizStrategy_notAuthorized()
YRizStrategy_noZeroAddress
error YRizStrategy_noZeroAddress()
YRizStrategy_noZeroValue
error YRizStrategy_noZeroValue()
YRizStrategy_outOfRange
error YRizStrategy_outOfRange()
creation bytecode
0x6101206040523480156200001257600080fd5b50604051620024c3380380620024c383398101604081905262000035916200023b565b6001600160a01b0380861660a05281166080523060c052604051859085908390620000a69062000072908590859033908190819060240162000345565b60408051601f198184030181529190526020810180516001600160e01b03908116634b839d7360e11b179091526200014516565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5550506001600160a01b0386161580620000e957506001600160a01b038116155b156200010857604051630e92808560e41b815260040160405180910390fd5b82620001275760405163379d684d60e01b815260040160405180910390fd5b506001600160a01b0390941660e052610100525050600055620003be565b60606000806080516001600160a01b031684604051620001669190620003a0565b600060405180830381855af49150503d8060008114620001a3576040519150601f19603f3d011682016040523d82523d6000602084013e620001a8565b606091505b509150915081620001c0576040513d806000833e8082fd5b9392505050565b6001600160a01b0381168114620001dd57600080fd5b50565b8051620001ed81620001c7565b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620002255781810151838201526020016200020b565b8381111562000235576000848401525b50505050565b60008060008060008060c087890312156200025557600080fd5b86516200026281620001c7565b60208801519096506200027581620001c7565b60408801519095506001600160401b03808211156200029357600080fd5b818901915089601f830112620002a857600080fd5b815181811115620002bd57620002bd620001f2565b604051601f8201601f19908116603f01168101908382118183101715620002e857620002e8620001f2565b816040528281528c60208487010111156200030257600080fd5b6200031583602083016020880162000208565b809850505050505060608701519250608087015191506200033960a08801620001e0565b90509295509295509295565b600060018060a01b03808816835260a0602084015286518060a0850152620003758160c0860160208b0162000208565b95811660408401529384166060830152509116608082015260c0601f909201601f1916010192915050565b60008251620003b481846020870162000208565b9190910192915050565b60805160a05160c05160e051610100516120496200047a6000396000818161030f01528181610e7a01528181610eee01528181610f8c01528181611101015281816112cc015281816114390152611575015260008181610229015281816105a60152610b2d0152600081816105fe015281816108750152610c600152600081816109e301528181610d2801528181610de30152818161101b015281816111f501526114cc015260008181610184015261036f01526120496000f3fe608060405234801561001057600080fd5b50600436106101825760003560e01c80639d7fb70c116100d8578063e1e158a51161008c578063fd967f4711610066578063fd967f4714610399578063fde813a814610331578063ffa1ad74146103be57610182565b8063e1e158a514610399578063ecf70858146103a2578063fb0e42e2146103ab57610182565b8063bdc8144b116100bd578063bdc8144b14610357578063d19a3bb81461036a578063de099c981461039157610182565b80639d7fb70c14610331578063a213c45f1461034457610182565b806346aa2f121161013a57806352d7bbfc1161011457806352d7bbfc146102a65780635d265d3f146102bb5780638a3c09591461030a57610182565b806346aa2f121461027857806349317f1d1461028b578063503160d91461029357610182565b80632eced00f1161016b5780632eced00f1461020457806333303f8e146102245780633d6cb5751461026357610182565b806304bd4629146101c75780631db9cde7146101ef575b7f00000000000000000000000000000000000000000000000000000000000000003660008037600080366000845af43d6000803e8080156101c2573d6000f35b3d6000fd5b6101dc6101d5366004611a4b565b5060001990565b6040519081526020015b60405180910390f35b6101f7610407565b6040516101e69190611a68565b610217610212366004611ae4565b610513565b6040516101e69190611afd565b61024b7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016101e6565b610276610271366004611ae4565b61058e565b005b6101dc610286366004611a4b565b6105a2565b6101dc6106a7565b6102766102a1366004611ae4565b6106be565b6102ae6106cf565b6040516101e69190611b39565b60408051600481526024810182526020810180516001600160e01b03167f440368a30000000000000000000000000000000000000000000000000000000017905290516101e691600091611bfe565b6101dc7f000000000000000000000000000000000000000000000000000000000000000081565b61027661033f366004611ae4565b610858565b610276610352366004611cad565b610860565b610276610365366004611ae4565b610b2b565b61024b7f000000000000000000000000000000000000000000000000000000000000000081565b6101dc610c3b565b6101dc61271081565b6101dc60005481565b6102766103b9366004611d9d565b610c4b565b6103fa6040518060400160405280600681526020017f76302e302e31000000000000000000000000000000000000000000000000000081525081565b6040516101e69190611e61565b60606000610413610e73565b905060008167ffffffffffffffff81111561043057610430611c19565b60405190808252806020026020018201604052801561047b57816020015b604080516060810182526000808252602080830182905292820152825260001990920191018161044e5790505b50905060005b8281101561050c57600081815260016020818152604092839020835160608101855281546001600160a01b038082168352600160a01b9091046bffffffffffffffffffffffff1693820193909352920154169181019190915282518390839081106104ee576104ee611e74565b6020026020010181905250808061050490611ea0565b915050610481565b5092915050565b604080516060810182526000808252602082018190529181019190915261053982610ee7565b50600090815260016020818152604092839020835160608101855281546001600160a01b038082168352600160a01b9091046bffffffffffffffffffffffff1693820193909352920154169181019190915290565b610596610f4b565b61059f81610f86565b50565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316146105e557506000919050565b60001960005414156105fa5750600019919050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166301e1d1146040518163ffffffff1660e01b8152600401602060405180830381865afa15801561065a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067e9190611ebb565b905060005481101561069d57806000546106989190611ed4565b6106a0565b60005b9392505050565b60006106b1610f4b565b6106b96110b5565b905090565b6106c6610f4b565b61059f816110bf565b606060006106db610e73565b905060006106e76112c6565b905060008267ffffffffffffffff81111561070457610704611c19565b60405190808252806020026020018201604052801561076957816020015b610756604051806080016040528060006001600160a01b031681526020016000815260200160008152602001600081525090565b8152602001906001900390816107225790505b50905060005b83811015610850576000818152600160205260409020546001600160a01b031661079857610850565b60006107a38261133b565b90506000846107b461271084611eeb565b6107be9190611f0a565b60408051608081018252600086815260016020818152848320546001600160a01b0381168552818501899052600160a01b90046bffffffffffffffffffffffff16948401859052918890529052919250606082019061081d9084611f2c565b81525084848151811061083257610832611e74565b602002602001018190525050508061084990611ea0565b905061076f565b509392505050565b61059f610f4b565b60405163d43fdcf760e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063d43fdcf79060240160006040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b5050825191506108ee90506108e9600183611ed4565b610ee7565b60006108f9836113d7565b90506000612710815b84811015610ad957600086828151811061091e5761091e611e74565b60209081029190910101515190506001600160a01b03811661096c576040517fe928085000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600087838151811061098057610980611e74565b6020026020010151602001516bffffffffffffffffffffffff169050838111156109d6576040517f0141d21d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a0c6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001683600019611644565b610ab98383838b8781518110610a2457610a24611e74565b602002602001015160400151604080516060810182526001600160a01b0394851681526bffffffffffffffffffffffff938416602080830191825293861682840190815260009788526001948590529290962090519551909316600160a01b029484169490941782559251920180549290911673ffffffffffffffffffffffffffffffffffffffff1992909216919091179055565b610ac38186611fa0565b94509250610ad2905081611ea0565b9050610902565b506127108214610b15576040517f344da6ff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8215610b2457610b24836110bf565b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166379b989176040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad9190611fb8565b6001600160a01b0316336001600160a01b031614610bf7576040517f17c5deb200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806000541461059f5760008190556040518181527f5d2e73196f8ba1b44e887e2bcc9bcd1f3e657add341d4a0a632ffff00d6903f29060200160405180910390a150565b610c486002612710611f0a565b81565b60405163d43fdcf760e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063d43fdcf79060240160006040518083038186803b158015610caa57600080fd5b505afa158015610cbe573d6000803e3d6000fd5b505082519150600090505b81811015610e6e576000838281518110610ce557610ce5611e74565b6020026020010151604001519050838281518110610d0557610d05611e74565b602090810291909101015151604051631a4ca37b60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015260248201849052306044830152909116906369328dec906064016020604051808303816000875af1158015610d87573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dab9190611ebb565b50838281518110610dbe57610dbe611e74565b602090810291909101810151015160405163e8eda9df60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015260248201849052306044830152600060648301529091169063e8eda9df90608401600060405180830381600087803b158015610e4457600080fd5b505af1158015610e58573d6000803e3d6000fd5b505050505080610e6790611ea0565b9050610cc9565b505050565b600080805b7f0000000000000000000000000000000000000000000000000000000000000000811015610ee1576000818152600160205260409020546001600160a01b0316610ec157610ee1565b81610ecb81611ea0565b9250508080610ed990611ea0565b915050610e78565b50919050565b610f1260017f0000000000000000000000000000000000000000000000000000000000000000611ed4565b81111561059f576040517fa726ab8c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b333014610f84576040517f29c3b7ee00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6000805b7f0000000000000000000000000000000000000000000000000000000000000000811015610e6e57828210610fbe57505050565b6000610fc98261133b565b90506000610fd78486611ed4565b905080821015610fe45750805b80156110a257610ff48185611fa0565b60008481526001602052604090819020549051631a4ca37b60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018590523060448301529296509116906369328dec906064016020604051808303816000875af115801561107c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a09190611ebb565b505b5050806110ae90611ea0565b9050610f8a565b60006106b96112c6565b6127108110156110fb576040517f19f873a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805b7f000000000000000000000000000000000000000000000000000000000000000081101561128e576000818152600160205260409020546001600160a01b03168061114a575061128e565b60008060018161115a8683611fa0565b81526020810191909152604001600020546001600160a01b0316141561118b576111848486611ed4565b90506111de565b612710611199600282611f0a565b6000858152600160205260409020546111c790600160a01b90046bffffffffffffffffffffffff1688611eeb565b6111d19190611fa0565b6111db9190611f0a565b90505b60405163e8eda9df60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390523060448301526000606483015283169063e8eda9df90608401600060405180830381600087803b15801561125557600080fd5b505af1158015611269573d6000803e3d6000fd5b5050505080846112799190611fa0565b935050508061128790611ea0565b90506110ff565b506040518281527f51a0c2a6faf0a6c6066be7a5ca4130fa9cf0b2991c3ed474e6a5c64c8edeca6a9060200160405180910390a15050565b6000805b7f0000000000000000000000000000000000000000000000000000000000000000811015611337576000818152600160205260409020546001600160a01b0316611312575090565b61131b8161133b565b6113259083611fa0565b915061133081611ea0565b90506112ca565b5090565b60008181526001602081905260408083209091015490517f70a082310000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa1580156113ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d19190611ebb565b92915050565b8051600090815b81811015611433576001600260008684815181106113fe576113fe611e74565b602090810291909101810151516001600160a01b031682528101919091526040016000205561142c81611ea0565b90506113de565b5060005b7f000000000000000000000000000000000000000000000000000000000000000081101561156f576000818152600160205260409020546001600160a01b031680611482575061156f565b6001600160a01b03811660009081526002602052604090205460011461155e5760006114ad8361133b565b9050801561155c57604051631a4ca37b60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390523060448301528316906369328dec906064016020604051808303816000875af115801561152a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061154e9190611ebb565b506115598186611fa0565b94505b505b5061156881611ea0565b9050611437565b5082515b7f00000000000000000000000000000000000000000000000000000000000000008110156115da576000818152600160208190526040822091825501805473ffffffffffffffffffffffffffffffffffffffff191690556115d381611ea0565b9050611573565b5060005b8181101561163d57600260008583815181106115fc576115fc611e74565b6020026020010151600001516001600160a01b03166001600160a01b03168152602001908152602001600020600090558061163690611ea0565b90506115de565b5050919050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b17905261169584826116fe565b6116f857604080516001600160a01b038516602482015260006044808301919091528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b1790526116ee9085906117a5565b6116f884826117a5565b50505050565b6000806000846001600160a01b03168460405161171b9190611fd5565b6000604051808303816000865af19150503d8060008114611758576040519150601f19603f3d011682016040523d82523d6000602084013e61175d565b606091505b50915091508180156117875750805115806117875750808060200190518101906117879190611ff1565b801561179c57506001600160a01b0385163b15155b95945050505050565b60006117fa826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166118929092919063ffffffff16565b905080516000148061181b57508080602001905181019061181b9190611ff1565b610e6e5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60606118a184846000856118a9565b949350505050565b6060824710156119215760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401611889565b600080866001600160a01b0316858760405161193d9190611fd5565b60006040518083038185875af1925050503d806000811461197a576040519150601f19603f3d011682016040523d82523d6000602084013e61197f565b606091505b50915091506119908783838761199b565b979650505050505050565b60608315611a07578251611a00576001600160a01b0385163b611a005760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611889565b50816118a1565b6118a18383815115611a1c5781518083602001fd5b8060405162461bcd60e51b81526004016118899190611e61565b6001600160a01b038116811461059f57600080fd5b600060208284031215611a5d57600080fd5b81356106a081611a36565b6020808252825182820181905260009190848201906040850190845b81811015611ad857611ac583855180516001600160a01b0390811683526020808301516bffffffffffffffffffffffff169084015260409182015116910152565b9284019260609290920191600101611a84565b50909695505050505050565b600060208284031215611af657600080fd5b5035919050565b606081016113d1828480516001600160a01b0390811683526020808301516bffffffffffffffffffffffff169084015260409182015116910152565b602080825282518282018190526000919060409081850190868401855b82811015611b9957815180516001600160a01b03168552868101518786015285810151868601526060908101519085015260809093019290850190600101611b56565b5091979650505050505050565b60005b83811015611bc1578181015183820152602001611ba9565b838111156116f85750506000910152565b60008151808452611bea816020860160208601611ba6565b601f01601f19169290920160200192915050565b82151581526040602082015260006118a16040830184611bd2565b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715611c5257611c52611c19565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611c8157611c81611c19565b604052919050565b600067ffffffffffffffff821115611ca357611ca3611c19565b5060051b60200190565b60006020808385031215611cc057600080fd5b823567ffffffffffffffff811115611cd757600080fd5b8301601f81018513611ce857600080fd5b8035611cfb611cf682611c89565b611c58565b81815260609182028301840191848201919088841115611d1a57600080fd5b938501935b83851015611d915780858a031215611d375760008081fd5b611d3f611c2f565b8535611d4a81611a36565b8152858701356bffffffffffffffffffffffff81168114611d6b5760008081fd5b81880152604086810135611d7e81611a36565b9082015283529384019391850191611d1f565b50979650505050505050565b60006020808385031215611db057600080fd5b823567ffffffffffffffff811115611dc757600080fd5b8301601f81018513611dd857600080fd5b8035611de6611cf682611c89565b81815260609182028301840191848201919088841115611e0557600080fd5b938501935b83851015611d915780858a031215611e225760008081fd5b611e2a611c2f565b8535611e3581611a36565b815285870135611e4481611a36565b818801526040868101359082015283529384019391850191611e0a565b6020815260006106a06020830184611bd2565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600019821415611eb457611eb4611e8a565b5060010190565b600060208284031215611ecd57600080fd5b5051919050565b600082821015611ee657611ee6611e8a565b500390565b6000816000190483118215151615611f0557611f05611e8a565b500290565b600082611f2757634e487b7160e01b600052601260045260246000fd5b500490565b6000808312837f800000000000000000000000000000000000000000000000000000000000000001831281151615611f6657611f66611e8a565b837f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff018313811615611f9a57611f9a611e8a565b50500390565b60008219821115611fb357611fb3611e8a565b500190565b600060208284031215611fca57600080fd5b81516106a081611a36565b60008251611fe7818460208701611ba6565b9190910192915050565b60006020828403121561200357600080fd5b815180151581146106a057600080fdfea2646970667358221220629ed487fed8f9d3376b68346d9c12a1b665199a0d24bb5e2117cb86c88f990364736f6c634300080c003300000000000000000000000086df48f8dc91504d2b3e360d67513f094dfa6c8400000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab100000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000010ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000f429aa024561ab570571b21ba2f16b9c481d156000000000000000000000000000000000000000000000000000000000000000105952697a53747261746567795745544800000000000000000000000000000000