Hello Space

I am testing out the mirror editor.

https://opensea.io/assets/ethereum/0x439cac149B935AE1D726569800972E1669d17094/9999

contract IdolMain is ERC721Enumerable, IERC2981, Ownable, ReentrancyGuard {
  /
  constructor(
    address _mintContractAddress,
    address _stethAddr,
    address _teamWalletAddress
  )
    ERC721("Idol", "IDOL")
  {
    mintContractAddress = _mintContractAddress;
    marketplaceAddress = address(0x0);
    teamWalletAddress = _teamWalletAddress;
    steth = IERC20(_stethAddr);
    stethPrincipalBalance = 0;
    allocatedStethRewards = 0;
    rewardPerGod = 0;
    allowAllContracts = true;
    // set caller reward to 1%
    updateCallerReward = 100;
    teamRewards = 0;
    deployTime = block.timestamp;
  }
  
  function updateRewardPerGod()
      public
      nonReentrant
  {
    uint256 stethBal = steth.balanceOf(address(this));
    // This should only occur if steth has experienced slashing.
    // Reduce stethPrincipalBalance to stethBal minus previously allocated rewards.
    if (stethBal < (stethPrincipalBalance + allocatedStethRewards)) {
      emit RewardPerGodUpdated(rewardPerGod, stethPrincipalBalance + allocatedStethRewards - stethBal, msg.sender);
      stethPrincipalBalance = stethBal - allocatedStethRewards;
      return;
    }
    // Nothing to do if the balances are equal.
    else if (stethBal == (stethPrincipalBalance + allocatedStethRewards)) {
      return;
    }
    // If we have extra stETH, update rewardPerGod, add newRewards to allocatedStethRewards.
    else if (stethBal > (stethPrincipalBalance + allocatedStethRewards)) {
      uint newRewards = stethBal - (stethPrincipalBalance + allocatedStethRewards);
      uint callerReward = newRewards * updateCallerReward / 10000;
      newRewards = newRewards - callerReward;
      rewardPerGod = rewardPerGod + newRewards / totalSupply();
      allocatedStethRewards = allocatedStethRewards + newRewards;
      emit RewardPerGodUpdated(rewardPerGod, 0, msg.sender);
      if(callerReward > 0){
        require(steth.transfer(msg.sender, callerReward));
      }
    }
  }