Incorrect staking output

Hi I am getting the wrong output on my staking. The odd thing is I got the correct output the first time through. After collecting rewards the first time, I then starting getting a much lower output. The percentage is set to 23%.

RewardRate 232200 uint256 This is correct
RewardPerToken 57967956 uint256 I believe this is the problem. Does anyone know if this function is taking the RewardRate output and cutting it by .57967956%? That is what is appears to be doing.

Thank you :slight_smile:

RewardsPerToken should have no value right? There shouldn't be a static value assigned. That should be left blank correct? I don't know how that value is even populating.

  uint256 public rewardRate = 2322;
  uint256 public lastUpdateTime;
  uint256 public rewardPerTokenStored;
  uint256 public minimalLock = 1209600;
  uint256 public minimalLockForReward = 604800;