Skip to content

STokens Contract

ATOM

This contract is the token contract for Staked representative Tokens, stkATOM, issued in Ethereum. It is an ERC20 based token, but which continuously accrues rewards in the form of pATOM, the longer a user holds them in his/her wallet address. This also houses the logic for moving reward rate, which enables pSTAKE to update the reward rate without breaking the reward dissemination for unredeemed users. Following are the contract functions and function signatures. Not all functions are meant to be called by users as some conform to admins (default admins, bridge admins, pauser admins).

Function Selector Function Signature
eb990c59 initialize(address,address,uint256,uint256)
c057058a isContractWhitelisted(address)
36bbacad getHolderData(address)
9e447fc6 setRewardRate(uint256)
7e1a3786 getRewardRate()
e4df5918 getLastUserRewardTimestamp(address)
40c10f19 mint(address,uint256)
9dc29fac burn(address,uint256)
64ab8675 calculateRewards(address)
097aad10 calculatePendingRewards(address)
4bcb30f8 setWhitelistedAddress(address,address,address)
530cd5ab removeWhitelistedAddress(address)
21bdf9e5 setUTokensContract(address)
58f8943e setLiquidStakingContract(address)
8456cb59 pause()
3f4ba83a unpause()

XPRT

This contract is the token contract for Staked representative Tokens, stkXPRT, issued in Ethereum. It is an ERC20 based token, but which continuously accrues rewards in the form of pXPRT, the longer a user holds them in his/her wallet address. This also houses the logic for moving reward rate, which enables pSTAKE to update the reward rate without breaking the reward dissemination for unredeemed users. Following are the contract functions and function signatures. Not all functions are meant to be called by users as some conform to admins (default admins, bridge admins, pauser admins).

Function Selector Function Signature
74e87e1e initialize(string,string,address,address,uint256,uint256)
cc964d08 upgradeVersionInitV2(string)
06fdde03 name()
c057058a isContractWhitelisted(address)
68aa9813 getWhitelistData(address)
3d9e0c05 getUTokenAddress()
9e447fc6 setRewardRate(uint256)
7e1a3786 getRewardRate()
40c10f19 mint(address,uint256)
9dc29fac burn(address,uint256)
1abed5d4 _calculatePendingRewards(uint256,uint256)
097aad10 calculatePendingRewards(address)
6687039c _calculateRewards(address)
64ab8675 calculateRewards(address)
b4926e74 _calculateHolderRewards(address)
a203ccf8 calculatePendingHolderRewards(address)
26d6772e calculateHolderRewards(address))
cad3be83 _beforeTokenTransfer(address,address,uint256)
9933d9ac setWhitelistedPTokenEmissionContract(address)
4bcb30f8 setWhitelistedAddress(address,address,address)
530cd5ab removeWhitelistedAddress(address)
21bdf9e5 setUTokensContract(address)
58f8943e setLiquidStakingContract(address)
8456cb59 pause()
3f4ba83a unpause()