Protocol Data
The current section describes what data is stored in the smart contract and how to obtain it.
Distribution V5
isNotUpgradeable
Returns true if the contract no longer supports upgrades to a new version.
bool public isNotUpgradeable;
depositToken
The stETH token address, see the LIDO doc.
address public depositToken;
l1Sender
The L1Sender
contract address.
address public l1Sender;
pools
Contain information about MOR reward pools for buckets, where pools[0]
- Capital bucket.
Pool[] public pools;
struct Pool {
uint128 payoutStart;
uint128 decreaseInterval;
uint128 withdrawLockPeriod;
uint128 claimLockPeriod;
uint128 withdrawLockPeriodAfterStake;
uint256 initialReward;
uint256 rewardDecrease;
uint256 minimalStake;
bool isPublic;
}
payoutStart
The unix epoch timestamp in seconds when the pool starts to pay out rewards.
decreaseInterval
The interval in seconds between reward decreases.
withdrawLockPeriod
The period in seconds when the user can't withdraw his stake.
claimLockPeriod
The period in seconds when the user can't claim his rewards after the payoutStart
withdrawLockPeriodAfterStake
The period in seconds when the user can't withdraw his stake after staking.
initialReward
The initial MOR reward for the bucket.
rewardDecrease
The MOR reward decrease per decreaseInterval
.
minimalStake
The minimal stake amount
isPublic
true
- for Capital bucket, false
for others.
poolsData
Contain additional internal information about MOR reward pools for buckets, where poolsData[0]
- Capital bucket.
mapping(uint256 => PoolData) public poolsData;
/**
* The structure that stores the pool's rate data.
* @param lastUpdate The timestamp when the pool was updated.
* @param rate The current reward rate.
* @param totalVirtualDeposited The total amount of tokens deposited in the pool with multiplier.
*/
struct PoolData {
uint128 lastUpdate;
uint256 rate;
uint256 totalVirtualDeposited;
}
// User storage
mapping(address => mapping(uint256 => UserData)) public usersData;
// Total deposited storage
uint256 public totalDepositedInPublicPools;
// Pools limits, V4 update
mapping(uint256 => PoolLimits) public poolsLimits;
// Referall storage, V5 update
mapping(uint256 => ReferrerTier[]) public referrerTiers;
mapping(address => mapping(uint256 => ReferrerData)) public referrersData;
Last updated
Was this helpful?