TopiaLpStaking

Verified contract

Active on Ethereum with 1,735 txns
Deployed by via 0x4ed96f1f at 17638230
Slot
32
30
28
26
24
22
20
18
16
14
12
10
8
6
4
2
0
-
variable spans 1 additional slot
ERC-20
Value $94,492.76
ERC-20
--
ERC-20
--
0x75b4739ae8b146fbf31b4841274203d8b6db8fb06179f1942dece3d35529f987
0xcdd61f395f8f7500f94ff2cf54576d954605aaeec99551998eca4cb47009888b
0xd514d20be018430fcff2dc777a3611365f6a01a359da695447433dfbcab67b94
0xc31a7ba82301083eb9cb3d076ad5e61983a05029dab65dd41dabe7b550d11439
0x98ecd24081fb3145a0fef2e9be37454e8456ba366adb2bee3ad2274cdceda427
0xf6aded72cb2023f30429b35abc9ace3887a01ae026bcecdae948c60994c358cf
0xeaa3cde4d591bd2634e1e7556c97bc46b7c8fa847fcf878757b8607e94181ac9
0x3e04d82315207b22a9028b505119ceda90b11bed6d6093da5801630f1030406e
0x03ca8fdb1d3cf64395dd9f42dac03dac5974496618e939291c7259c097f99fc0
0x059b5ed5487711533d19f464c48f58e980e1de1bcadc202ba47999fcba7bae79

Functions
Getter at block 21204951
getLockupIntervalMultipliers(view returns (uint8[])
[1, 2, 3, 6, 12, 24]
getLockupIntervals(view returns (uint32[])
[2592000, 5184000, 7776000, 15552000, 31104000, 62208000]
getLockupIntervalsCount(view returns (uint8)
6
owner(view returns (address)
0x156fb9db6cb952daaebbf080974022271988868f
rewardsPerWeight(view returns (uint256 totalWeightuint96 accumulateduint32 lastUpdateduint96 rate)
(totalWeight=6010452147500000000000000, accumulated=37125150053382370922, lastUpdated=1731804551, rate=3963723997970000000)
rewardsPeriod(view returns (uint32 startuint32 end)
(start=1688688950, end=1814919350)
rewardsSet(view returns (bool)
true
rewardsToken(view returns (address)
0xccccb68e1a848cbdb5b60a974e07aae143ed40c3
stakingToken(view returns (address)
0xc91ef786fbf6d62858262c82c63de45085dea659
Read-only
estimateStakeReward(uint256 _lpAmountuint8 _lockupIntervalIndexview returns (uint256)
getUserStake(address _useruint16 _userStakeIndexview returns (struct ITopiaLpStakingUserStake)
getUserStakeReward(address _useruint16 _userStakeIndexview returns (uint256)
getUserStakeRewards(address _useruint16[] _userStakeIndexesview returns (uint256[])
getUserStakes(address _userview returns (struct ITopiaLpStakingUserStake[])
getUserStakesCount(address _userview returns (uint256)
lockupIntervalMultipliers(uint256view returns (uint8)
lockupIntervals(uint256view returns (uint32)
userStakes(addressuint256view returns (uint256 lpAmountuint96 checkpointuint32 startedAtuint8 lockupIntervalIndexbool claimedbool forfeited)
State-modifying
renounceOwnership(
setRewards(uint32 _startuint32 _enduint96 _rate
stake(uint256 _lpAmountuint8 _lockupIntervalIndex
transferOwnership(address newOwner
unstakeClaim(uint16 _userStakeIndex
unstakeForfeit(uint16 _userStakeIndex
Events
LockupIntervalAdded(uint8 lockupIntervalIndexuint32 intervaluint8 multiplier
LpTokensStaked(address indexed useruint16 userStakeIndexuint256 amountuint256 lockupTime
LpTokensUnstakeForfeited(address indexed useruint16 userStakeIndexuint256 amount
LpTokensUnstaked(address indexed useruint16 userStakeIndexuint256 amountuint256 reward
OwnershipTransferred(address indexed previousOwneraddress indexed newOwner
RewardsPerWeightUpdated(uint256 accumulated
RewardsSet(uint32 startuint32 enduint256 rate
RewardsTokenSet(address rewardsTokenAddress
UniswapPairSet(address uniswapPairAddress
Constructor
constructor(address _rewardsTokenaddress _stakingTokenuint32[] _lockupIntervalsuint8[] _lockupIntervalMultipliers
Fallback and receive

This contract contains no fallback and receive objects.

Errors
AlreadyUnstaked(
IntervalsMismatch(
InvalidRewardRate(
InvalidStart(
InvalidStartEnd(
LPAmountZero(
LockupTimeUnmet(
RewardsAlreadySet(
StakedPositionsRequired(