Enso Staking
Staking.sol#
Enso tokens are staked in the Staking
contract, which authorizes RewardDistribution
to mint sEnso
tokens to the staker.
staking for 730 days provides 300% boost in sEnso
tokens and declines linearly to a minimum of 14 days. Stake can be extended or more tokens may be added later although full boost will not apply.
RewardDistribution.sol#
The RewardDistribution
contract distributes rewards to sEnso
holders proportional to balance.
sEnso
token integrates ERC20VotesComp allowing GovernerBravo integration. Similar to UniSwap,
governance can choose to mint a cap of 2%
additional supply per year. Governance can vote to increase cap of 2%
on one occasion: this is a disaster recovery method.
#
Staking- Users can stake anywhere between 14-730 days
- Minimum stake amount is 0.000000000000017520 enso
- Stake can be extended 14-n days (n = 730 - days elapsed)
- Bonus = amount (stake_days / 730) 3
- More enso tokens can be added to the stake with the boost reward relative to days remaining in current stake
- Once a stake has expired, user must call
restake()
to stake again, or elseunstake()
to begin a 14 day timelock to withdraw enso tokens. - Anyone can add to another persons stake. user must send initial tx to create stake however. stakes can not be extended on behalf of someone else.
#
Rewards- Rewards can be claimed anytime before a user calls
unstake()
and begins the process to withdraw his tokens - If they haven't unstaked, users can continue claim rewards after the stake expires.
- Users can choose to reinvest their earning into their current stake as long as the stake time has not expired.
- Enso token is the only reward token accepted
#
Open sourceContract source code can be found in Github repository.
#
Contract AddressesContract | Network | Address |
---|---|---|
Staking | Eth Mainnet | 0x00 |