0 txs
1.2k calls
constructor
constructor(address claimer_)
functions
claimableAssetsOf
viewfunction claimableAssetsOf(address account) view returns (uint256 assets)
claimer
viewfunction claimer() view returns (address)
collateral
viewfunction collateral() view returns (address)
getAccountData
viewfunction getAccountData(address account) view returns (uint256 sharesToClaimPrev, uint256 sharesToClaim, uint256 claimableAssets, uint256 claimEpoch)
getCurrentEpoch
viewfunction getCurrentEpoch() view returns (uint256)
getEpochData
viewfunction getEpochData(uint256 epoch) view returns (tuple)
pendingAssets
viewfunction pendingAssets() view returns (uint256)
pendingAssetsOf
viewfunction pendingAssetsOf(address account) view returns (uint256 assets)
symbioticVault
viewfunction symbioticVault() view returns (address)
vault
viewfunction vault() view returns (address)
claim
nonpayablefunction claim(address account, address recipient, uint256 maxAmount) returns (uint256 amount)
handlePendingEpochs
nonpayablefunction handlePendingEpochs(address account)
initialize
nonpayablefunction initialize(address vault_, address symbioticVault_)
pull
nonpayablefunction pull(uint256 epoch)
request
nonpayablefunction request(address account, uint256 amount)
transferPendingAssets
nonpayablefunction transferPendingAssets(address to, uint256 amount)
events
Claimed
event Claimed(address indexed account, address indexed recipient, uint256 amount)
EpochClaimed
event EpochClaimed(uint256 indexed epoch, uint256 claimedAssets)
Initialized
event Initialized(uint64 version)
Transfer
event Transfer(address indexed from, address indexed to, uint256 indexed epoch, uint256 amount)
WithdrawalRequested
event WithdrawalRequested(address indexed account, uint256 indexed epoch, uint256 amount)
errors
AddressEmptyCode
error AddressEmptyCode(address target)
AddressInsufficientBalance
error AddressInsufficientBalance(address account)
FailedInnerCall
error FailedInnerCall()
InvalidInitialization
error InvalidInitialization()
MathOverflowedMulDiv
error MathOverflowedMulDiv()
NotInitializing
error NotInitializing()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
creation bytecode
0x60a060405234801561000f575f80fd5b506040516117ad3803806117ad83398101604081905261002e916100fb565b6001600160a01b038116608052610043610049565b50610128565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100995760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100f85780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b5f6020828403121561010b575f80fd5b81516001600160a01b0381168114610121575f80fd5b9392505050565b6080516116666101475f395f818161024301526108ba01526116665ff3fe608060405234801561000f575f80fd5b50600436106100fb575f3560e01c80639de4dfca11610093578063d379be2311610063578063d379be231461023e578063d8dfeb4514610265578063e7beaf9d14610278578063fbfa77cf1461028b575f80fd5b80639de4dfca146101f0578063aa50ea92146101f8578063b97dd9e214610223578063c8c01a551461022b575f80fd5b806363c6b4eb116100ce57806363c6b4eb146101725780638485f1f114610193578063859e7d32146101a6578063996cba68146101dd575f80fd5b806347f28764146100ff578063485cc955146101145780634d0392a8146101275780635d78650e1461013a575b5f80fd5b61011261010d366004611467565b61029d565b005b610112610122366004611491565b6105a6565b6101126101353660046114c8565b6106b6565b61014d6101483660046114df565b61072e565b6040805194855260208501939093529183015260608201526080015b60405180910390f35b6101856101803660046114df565b610799565b604051908152602001610169565b6101126101a13660046114df565b61081c565b6101b96101b43660046114c8565b610844565b60408051825115158152602080840151908201529181015190820152606001610169565b6101856101eb3660046114fa565b6108a4565b6101856109e7565b60015461020b906001600160a01b031681565b6040516001600160a01b039091168152602001610169565b610185610b05565b610112610239366004611467565b610b75565b61020b7f000000000000000000000000000000000000000000000000000000000000000081565b60025461020b906001600160a01b031681565b6101856102863660046114df565b610c7b565b5f5461020b906001600160a01b031681565b338115806102bc5750826001600160a01b0316816001600160a01b0316145b156102c657505050565b5f6102cf610b05565b90505f6102dd82600161154c565b6001600160a01b038085165f90815260046020526040808220928916825290209192509061030b8285610d12565b6103158185610d12565b5f838152602083905260408120549061032e8583610d42565b90508781106103de575f610343838a84610de6565b5f8781526020879052604081208054929350839290919061036590849061155f565b90915550505f868152602085905260408120805483929061038790849061154c565b90915550506002840186905560405181815286906001600160a01b03808d1691908b16907f9ed053bb818ff08b8353cd46f78db1f0799f31c9e4458fdb425c10eccd2efc449060200160405180910390a45061059b565b5f86815260208590526040812054906103f78883610d42565b905089610404828561154c565b10156104755760405162461bcd60e51b815260206004820152603560248201527f53796d62696f7469635769746864726177616c51756575653a20696e73756666604482015274696369656e742070656e64696e672061737365747360581b60648201526084015b60405180910390fd5b8315610506575f878152602086905260408120805486929061049890849061154c565b90915550505f878152602087905260408120556104b5838b61155f565b9950868b6001600160a01b03168a6001600160a01b03167f9ed053bb818ff08b8353cd46f78db1f0799f31c9e4458fdb425c10eccd2efc44876040516104fd91815260200190565b60405180910390a45b5f610512838c84610de6565b905061051e818461155f565b5f8a81526020898152604080832093909355889052908120805483929061054690849061154c565b90915550506002860188905560405181815289906001600160a01b03808f1691908d16907f9ed053bb818ff08b8353cd46f78db1f0799f31c9e4458fdb425c10eccd2efc449060200160405180910390a45050505b505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff165f811580156105eb5750825b90505f8267ffffffffffffffff1660011480156106075750303b155b905081158015610615575080155b156106335760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561065d57845460ff60401b1916600160401b1785555b6106678787610ea5565b83156106ad57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b6106c6816106c2610b05565b1190565b6107225760405162461bcd60e51b815260206004820152602760248201527f53796d62696f7469635769746864726177616c51756575653a20696e76616c696044820152660c840cae0dec6d60cb1b606482015260840161046c565b61072b81610f5b565b50565b6001600160a01b0381165f90815260046020526040812060028101548291829190811561077557805f61076260018561155f565b81526020019081526020015f2054610777565b5f5b5f83815260208390526040902054600190920154909791965094509092509050565b5f806107a3610b05565b6001600160a01b0384165f9081526004602090815260408083208484529182905290912054919250906107d7908390610d42565b6107e1908461154c565b92506107ee60018361154c565b5f8181526020839052604090205490925061080a908390610d42565b610814908461154c565b949350505050565b6001600160a01b0381165f90815260046020526040902061072b9061083f610b05565b610d12565b61086760405180606001604052805f151581526020015f81526020015f81525090565b505f908152600360209081526040918290208251606081018452815460ff1615158152600182015492810192909252600201549181019190915290565b5f336001600160a01b0385168114806108ee57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316145b61090a5760405162461bcd60e51b815260040161046c90611572565b6001600160a01b0385165f90815260046020526040902061092d8161083f610b05565b80600101549250825f03610945575f925050506109e0565b838311610957575f6001820155610973565b83925083816001015f82825461096d919061155f565b90915550505b821561099057600254610990906001600160a01b03168685611134565b846001600160a01b0316866001600160a01b03167ff7a40077ff7a04c7e61f6f26fb13774259ddf1b6bce9ecf26a8276cdd3992683856040516109d591815260200190565b60405180910390a350505b9392505050565b5f806109f1610b05565b6001805491925030916001600160a01b031690819063f5e7ee0f90610a1790869061154c565b6040516001600160e01b031960e084901b16815260048101919091526001600160a01b0385166024820152604401602060405180830381865afa158015610a60573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a8491906115b5565b60405163f5e7ee0f60e01b8152600481018590526001600160a01b03848116602483015283169063f5e7ee0f90604401602060405180830381865afa158015610acf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af391906115b5565b610afd919061154c565b935050505090565b60015460408051630ecce30160e31b815290515f926001600160a01b03169163766718089160048083019260209291908290030181865afa158015610b4c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b7091906115b5565b905090565b5f546001600160a01b03163314610b9e5760405162461bcd60e51b815260040161046c90611572565b805f03610ba9575050565b6001600160a01b0382165f90815260046020526040812090610bc9610b05565b9050610bd58282610d12565b610be081600161154c565b5f8181526003602052604081206001810180549394509092869290610c0690849061154c565b90915550505f8281526020849052604081208054869290610c2890849061154c565b90915550506002830182905560405184815282906001600160a01b038716907f24b91f4f47caf44230a57777a9be744924e82bf666f2d5702faf97df35e60f9f9060200160405180910390a35050505050565b6001600160a01b0381165f908152600460205260408120600181015491610ca0610b05565b60028301549091508015801590610cc55750610cc5610cc060018361155f565b831190565b15610ceb57610cde83610cd960018461155f565b611186565b610ce8908561154c565b93505b80821115610d0a57610cfd8382611186565b610d07908561154c565b93505b505050919050565b60028201548015610d3257610d3283610d2c60018461155f565b846111ec565b610d3d8382846111ec565b505050565b5f815f03610d5157505f610de0565b60015460405163f5e7ee0f60e01b815260048101859052306024820152610ddd916001600160a01b03169063f5e7ee0f90604401602060405180830381865afa158015610da0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dc491906115b5565b5f85815260036020526040902060010154849190610de6565b90505b92915050565b5f838302815f1985870982811083820303915050805f03610e1a57838281610e1057610e106115cc565b04925050506109e0565b808411610e3a5760405163227bc15360e01b815260040160405180910390fd5b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b610ead6112a5565b5f80546001600160a01b038085166001600160a01b0319928316179092556001805492841692909116821790556040805163d8dfeb4560e01b8152905163d8dfeb45916004808201926020929091908290030181865afa158015610f13573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f3791906115e0565b600280546001600160a01b0319166001600160a01b03929092169190911790555050565b5f818152600360205260409020805460ff1615610f76575050565b805460ff1916600190811782555460405163a5d0322360e01b8152600481018490523060248201819052916001600160a01b031690819063a5d0322390604401602060405180830381865afa158015610fd1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ff591906115fb565b156110005750505050565b60405163f5e7ee0f60e01b8152600481018590526001600160a01b03838116602483015282169063f5e7ee0f90604401602060405180830381865afa15801561104b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061106f91906115b5565b5f0361107b5750505050565b604051635569f64b60e11b81526001600160a01b038381166004830152602482018690525f919083169063aad3ec96906044016020604051808303815f875af11580156110ca573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110ee91906115b5565b6002850181905560405181815290915085907f868a3926c2e5d592b8a1fc8f6390ce94bdb8fb5571d7071a0d820e292bb5334b9060200160405180910390a25050505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610d3d9084906112f0565b5f818152602083905260408120548082036111a4575f915050610de0565b5f838152600360205260409020805460ff16156111d957600281015460018201546111d0918491610de6565b92505050610de0565b6111e38483610d42565b95945050505050565b8181116111f857505050565b5f82815260208490526040812054908190036112145750505050565b61121d83610f5b565b5f83815260036020526040812060028101546001820154919291611242918591610de6565b905082826001015f828254611257919061155f565b9250508190555080826002015f828254611271919061155f565b9250508190555080866001015f82825461128b919061154c565b9091555050505f9384525050506020919091526040812055565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166112ee57604051631afcd79f60e31b815260040160405180910390fd5b565b5f6113046001600160a01b03841683611351565b905080515f1415801561132857508080602001905181019061132691906115fb565b155b15610d3d57604051635274afe760e01b81526001600160a01b038416600482015260240161046c565b6060610ddd83835f845f80856001600160a01b03168486604051611375919061161a565b5f6040518083038185875af1925050503d805f81146113af576040519150601f19603f3d011682016040523d82523d5f602084013e6113b4565b606091505b50915091506113c48683836113ce565b9695505050505050565b6060826113e3576113de8261142a565b6109e0565b81511580156113fa57506001600160a01b0384163b155b1561142357604051639996b31560e01b81526001600160a01b038516600482015260240161046c565b50806109e0565b80511561143a5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160a01b038116811461072b575f80fd5b5f8060408385031215611478575f80fd5b823561148381611453565b946020939093013593505050565b5f80604083850312156114a2575f80fd5b82356114ad81611453565b915060208301356114bd81611453565b809150509250929050565b5f602082840312156114d8575f80fd5b5035919050565b5f602082840312156114ef575f80fd5b81356109e081611453565b5f805f6060848603121561150c575f80fd5b833561151781611453565b9250602084013561152781611453565b929592945050506040919091013590565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610de057610de0611538565b81810381811115610de057610de0611538565b60208082526023908201527f53796d62696f7469635769746864726177616c51756575653a20666f726269646040820152623232b760e91b606082015260800190565b5f602082840312156115c5575f80fd5b5051919050565b634e487b7160e01b5f52601260045260245ffd5b5f602082840312156115f0575f80fd5b81516109e081611453565b5f6020828403121561160b575f80fd5b815180151581146109e0575f80fd5b5f82518060208501845e5f92019182525091905056fea26469706673582212202946e69e8517dfae1aeb6fbd310eeb7c69d1b615d836a9dbcf643f61c2dc09da64736f6c6343000819003300000000000000000000000025024a3017b8da7161d8c5dccf768f8678fb5802