0 txs
6 calls
constructor
constructor(address _vault, address _market, address _proxyRegistry)
functions
lastRewardBlock
viewfunction lastRewardBlock() view returns (uint256)
market
viewfunction market() view returns (address)
proxyRegistry
viewfunction proxyRegistry() view returns (address)
rewardState
viewfunction rewardState(address) view returns (uint128 index, uint128 lastBalance)
userReward
viewfunction userReward(address, address) view returns (uint128 index, uint128 accrued)
vault
viewfunction vault() view returns (address)
handleRewardsOnDeposit
nonpayablefunction handleRewardsOnDeposit(address user, uint256 collateralAmountBefore, int256 deltaCollateral)
handleRewardsOnWithdraw
nonpayablefunction handleRewardsOnWithdraw(address user, uint256 collateralAmountBefore, int256 deltaCollateral) returns (address[] tokens, uint256[] amounts, address to)
events
No events.
errors
OnlyVault
error OnlyVault()
creation bytecode
0x60e060405234801561001057600080fd5b5060405162001473380380620014738339810160408190526100319161006a565b6001600160a01b0391821660805291811660a0521660c0526100ad565b80516001600160a01b038116811461006557600080fd5b919050565b60008060006060848603121561007f57600080fd5b6100888461004e565b92506100966020850161004e565b91506100a46040850161004e565b90509250925092565b60805160a05160c0516113586200011b6000396000818161014601526105fa0152600081816101c3015281816101f00152818161024e015281816108e00152610a2c01526000818160fb01528181610305015281816107b3015281816108ab015261097c01526113586000f3fe608060405234801561001057600080fd5b50600436106100785760003560e01c80635cbadbe41461007d578063775c43d3146100e157806380f55605146100f6578063a9f8d1811461012a578063b50cbd9f14610141578063c7f971ae14610168578063ea64a8201461018a578063fbfa77cf146101be575b600080fd5b6100bc61008b366004610f09565b60016020908152600092835260408084209091529082529020546001600160801b0380821691600160801b90041682565b604080516001600160801b039384168152929091166020830152015b60405180910390f35b6100f46100ef366004610f42565b6101e5565b005b61011d7f000000000000000000000000000000000000000000000000000000000000000081565b6040516100d89190610f77565b61013360025481565b6040519081526020016100d8565b61011d7f000000000000000000000000000000000000000000000000000000000000000081565b61017b610176366004610f42565b61023e565b6040516100d893929190610f8b565b6100bc610198366004611025565b6003602052600090815260409020546001600160801b0380821691600160801b90041682565b61011d7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461022e57604051638d1af8bd60e01b815260040160405180910390fd5b6102398383836102af565b505050565b6060806000336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461028c57604051638d1af8bd60e01b815260040160405180910390fd5b6102978686866102af565b6102a0866102fe565b92509250925093509350939050565b6102b983836106e8565b60008113156102e0576102cb8161073e565b6000546102d8919061105f565b600055505050565b6102f16102ec82611072565b61073e565b6000546102d8919061108e565b60608060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c4f59f9b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015610361573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610389919081019061110c565b9250825167ffffffffffffffff8111156103a5576103a56110a1565b6040519080825280602002602001820160405280156103ce578160200160208202803683370190505b50915060005b83518110156105e257600160008583815181106103f3576103f36111ab565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060000160109054906101000a90046001600160801b03166001600160801b0316838281518110610470576104706111ab565b60200260200101818152505082818151811061048e5761048e6111ab565b60200260200101516000146105d0576000600160008684815181106104b5576104b56111ab565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000876001600160a01b03166001600160a01b0316815260200190815260200160002060000160106101000a8154816001600160801b0302191690836001600160801b0316021790555061054983828151811061053c5761053c6111ab565b6020026020010151610798565b6003600086848151811061055f5761055f6111ab565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060000160108282829054906101000a90046001600160801b03166105ab91906111c1565b92506101000a8154816001600160801b0302191690836001600160801b031602179055505b806105da816111e8565b9150506103d4565b5060405163052e207160e31b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063297103889061062f908790600401610f77565b602060405180830381865afa15801561064c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106709190611201565b156106de57836001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d79190611223565b90506106e1565b50825b9193909250565b6000806106f36107ae565b9150915081516000036107065750505050565b6001600160a01b0384161580159061072757506001600160a01b0384163014155b156107385761073884848484610c34565b50505050565b6000808212156107945760405162461bcd60e51b815260206004820181905260248201527f53616665436173743a2076616c7565206d75737420626520706f736974697665604482015260640160405180910390fd5b5090565b60006001600160801b0382111561079457600080fd5b6060807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c4f59f9b6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561080f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610837919081019061110c565b9150815167ffffffffffffffff811115610853576108536110a1565b60405190808252806020026020018201604052801561087c578160200160208202803683370190505b509050815160000361088c579091565b4360025414610bac5743600255600054604051639262187b60e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690639262187b90610908907f000000000000000000000000000000000000000000000000000000000000000090600401610f77565b6000604051808303816000875af1158015610927573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261094f9190810190611240565b5060005b8351811015610ba6576000848281518110610970576109706111ab565b602002602001015190507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316036109b95750610b96565b6001600160a01b03811660009081526003602090815260408083208151808301909252546001600160801b03808216808452600160801b9092041692820183905288519193909183908a9088908110610a1457610a146111ab565b60200260200101516001600160a01b03166370a082317f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b8152600401610a679190610f77565b602060405180830381865afa158015610a84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa891906112c6565b610ab2919061108e565b90506000808815610ad657610ac7838a610ea2565b9150610ad3828a610ed3565b90505b83600003610ae357600193505b8815610af657610af3828561105f565b93505b6040518060400160405280610b0a86610798565b6001600160801b03168152602001610b2a610b25848961105f565b610798565b6001600160801b039081169091526001600160a01b0389166000908152600360209081526040909120835193909101518216600160801b0292909116919091179055895184908b908a908110610b8257610b826111ab565b602002602001018181525050505050505050505b610b9f816111e8565b9050610953565b50509091565b60005b8251811015610c2f5760036000848381518110610bce57610bce6111ab565b6020908102919091018101516001600160a01b031682528101919091526040016000205482516001600160801b0390911690839083908110610c1257610c126111ab565b602090810291909101015280610c27816111e8565b915050610baf565b509091565b6001600160a01b03841615801590610c5557506001600160a01b0384163014155b610c6157610c616112df565b8260005b8351811015610e9a576000848281518110610c8257610c826111ab565b602002602001015190506000848381518110610ca057610ca06111ab565b6020908102919091018101516001600160a01b038085166000908152600184526040808220928d168252919093528220549092506001600160801b031690819003610cfb57610cef6001610798565b6001600160801b031690505b81811480610d07575081155b15610d1457505050610e8a565b6000610d20828461108e565b90506000610d2e8783610ed3565b905060008160016000886001600160a01b03166001600160a01b0316815260200190815260200160002060008e6001600160a01b03166001600160a01b0316815260200190815260200160002060000160109054906101000a90046001600160801b03166001600160801b0316610da5919061105f565b90506040518060400160405280610dbb87610798565b6001600160801b03168152602001610dd283610798565b6001600160801b031681525060016000886001600160a01b03166001600160a01b0316815260200190815260200160002060008e6001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b031602179055509050505050505050505b610e93816111e8565b9050610c65565b505050505050565b600080610eb7670de0b6b3a7640000856112f5565b9050828181610ec857610ec861130c565b049150505b92915050565b600080610ee083856112f5565b9050670de0b6b3a764000081610ec8565b6001600160a01b0381168114610f0657600080fd5b50565b60008060408385031215610f1c57600080fd5b8235610f2781610ef1565b91506020830135610f3781610ef1565b809150509250929050565b600080600060608486031215610f5757600080fd5b8335610f6281610ef1565b95602085013595506040909401359392505050565b6001600160a01b0391909116815260200190565b606080825284519082018190526000906020906080840190828801845b82811015610fcd5781516001600160a01b031684529284019290840190600101610fa8565b5050508381038285015285518082528683019183019060005b8181101561100257835183529284019291840191600101610fe6565b50506001600160a01b0386166040860152925061101d915050565b949350505050565b60006020828403121561103757600080fd5b813561104281610ef1565b9392505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610ecd57610ecd611049565b6000600160ff1b820161108757611087611049565b5060000390565b81810381811115610ecd57610ecd611049565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156110e0576110e06110a1565b604052919050565b600067ffffffffffffffff821115611102576111026110a1565b5060051b60200190565b6000602080838503121561111f57600080fd5b825167ffffffffffffffff81111561113657600080fd5b8301601f8101851361114757600080fd5b805161115a611155826110e8565b6110b7565b81815260059190911b8201830190838101908783111561117957600080fd5b928401925b828410156111a057835161119181610ef1565b8252928401929084019061117e565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b6001600160801b038281168282160390808211156111e1576111e1611049565b5092915050565b6000600182016111fa576111fa611049565b5060010190565b60006020828403121561121357600080fd5b8151801515811461104257600080fd5b60006020828403121561123557600080fd5b815161104281610ef1565b6000602080838503121561125357600080fd5b825167ffffffffffffffff81111561126a57600080fd5b8301601f8101851361127b57600080fd5b8051611289611155826110e8565b81815260059190911b820183019083810190878311156112a857600080fd5b928401925b828410156111a0578351825292840192908401906112ad565b6000602082840312156112d857600080fd5b5051919050565b634e487b7160e01b600052600160045260246000fd5b8082028115828204841417610ecd57610ecd611049565b634e487b7160e01b600052601260045260246000fdfea2646970667358221220053cbfb0a8dbe11ee3e7c2ec4813c9ff5a2050283507b0f083642ce523d1f5aa64736f6c6343000813003300000000000000000000000018c15607c91c6fc51db6429e7fdf5f6165deed830000000000000000000000009a63fa80b5ddfd3cab23803fdb93ad2c18f3d5aa000000000000000000000000c63e9279410d37c0a25d094e26cddbb73aed7d95