text: function checkVariablesOnLoad(data) {
      if (data.wowCubes === undefined) {
          player.wowCubes = 0;
          player.wowTesseracts = 0;
          player.wowHypercubes = 0;
          player.cubeUpgrades = [null, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      }
      if (data.shoptoggles.reincarnate === undefined) {
          player.shoptoggles.reincarnate = true
      }
      if (data.ascendBuilding1 === undefined) {
          player.ascendBuilding1 = {
              cost: 1,
              owned: 0,
              generated: new Decimal("0"),
              multiplier: 0.01
          }
          player.ascendBuilding2 = {
              cost: 10,
              owned: 0,
              generated: new Decimal("0"),
              multiplier: 0.01
          }
          player.ascendBuilding3 = {
              cost: 100,
              owned: 0,
              generated: new Decimal("0"),
              multiplier: 0.01
          }
          player.ascendBuilding4 = {
              cost: 1000,
              owned: 0,
              generated: new Decimal("0"),
              multiplier: 0.01
          }
          player.ascendBuilding5 = {
              cost: 10000,
              owned: 0,
              generated: new Decimal("0"),
              multiplier: 0.01
          }
      }
      if (data.tesseractbuyamount === undefined) {
          player.tesseractbuyamount = 1
      }
      if (data.tesseractBlessings === undefined) {
          player.tesseractBlessings = {
              accelerator: 0,
              multiplier: 0,
              offering: 0,
              runeExp: 0,
              obtainium: 0,
              antSpeed: 0,
              antSacrifice: 0,
              antELO: 0,
              talismanBonus: 0,
              globalSpeed: 0
          }
          player.hypercubeBlessings = {
              accelerator: 0,
              multiplier: 0,
              offering: 0,
              runeExp: 0,
              obtainium: 0,
              antSpeed: 0,
              antSacrifice: 0,
              antELO: 0,
              talismanBonus: 0,
              globalSpeed: 0
          }
      }
      if (data.prototypeCorruptions === undefined) {
          player.prototypeCorruptions = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
          player.usedCorruptions = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      }
      if (data.constantUpgrades === undefined) {
          player.ascendShards = new Decimal("0")
          player.constantUpgrades = [null, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      }
      if (data.roombaResearchIndex === undefined) {
          player.roombaResearchIndex = 0;
      }
      if (data.history === undefined) {
          player.history = {};
          player.cubesThisAscension = {
              "challenges": 0,
              "reincarnation": 0,
              "ascension": 0,
              "maxCubesPerSec": 0,
              "maxAllTime": 0,
              "cpsOnC10Comp": 0,
              "tesseracts": 0,
              "hypercubes": 0
          };
          player.historyCountMax = 10;
      }
      if (data.autoChallengeRunning === undefined) {
          player.autoChallengeRunning = false
          player.autoChallengeIndex = 1
          player.autoChallengeToggles = [false, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false]
          player.autoChallengeStartExponent = 10
          player.autoChallengeTimer = {
              start: 10,
              exit: 2,
              enter: 2
          }
      }
      if (data.autoAscend === undefined) {
          player.autoAscend = false;
          player.autoAscendMode = "c10Completions";
          player.autoAscendThreshold = 1;
      }
      if (data.runeBlessingLevels === undefined) {
          player.runeBlessingLevels = [0, 0, 0, 0, 0, 0];
          player.runeSpiritLevels = [0, 0, 0, 0, 0, 0];
          player.runeBlessingBuyAmount = 0;
          player.runeSpiritBuyAmount = 0;
      }
  
      if (player.researches[180] > 1) {
          player.researches[180] = 1;
      }
  
      if (data.autoTesseracts === undefined) {
          player.autoTesseracts = [false, false, false, false, false, false]
      }
  
      if (player.prototypeCorruptions[0] === null || player.prototypeCorruptions[0] === undefined) {
          player.usedCorruptions = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
          player.prototypeCorruptions = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      }
      if (player.corruptionLoadouts === undefined) {
          player.corruptionLoadouts = {
              1: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              3: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
          };
          player.corruptionShowStats = true
      }
  
      for (let i = 0; i <= 4; i++) {
          if (player.runelevels[i] > calculateMaxRunes(i + 1)) {
              player.runelevels[i] = 0
          }
      }
  
      if (data.shopUpgrades.challengeExtension === undefined) {
          player.shopUpgrades.challengeExtension = 0;
          player.shopUpgrades.challenge10Tomes = 0;
          player.shopUpgrades.seasonPassLevel = 0;
          player.shopUpgrades.cubeToQuarkBought = false;
          player.shopUpgrades.tesseractToQuarkBought = false;
          player.shopUpgrades.hypercubeToQuarkBought = false;
      }
      if (data.cubeUpgrades === undefined || data.cubeUpgrades[19] === 0 || player.cubeUpgrades[19] === 0) {
          for (let i = 121; i <= 125; i++) {
              player.upgrades[i] = 0
          }
      }
      if (data.toggles.one !== undefined) {
          for (let i = 0; i < 50; ++i) {
              if (player.toggles[cardinals[i]] !== undefined) {
                  player.toggles[i + 1] = player.toggles[cardinals[i]];
                  player.toggles[cardinals[i]] = undefined;
              }
          }
      }
      if (data.ascensionCount === 0) {
          player.toggles[31] = true;
          player.toggles[32] = true;
      }
  
      if (data.dayCheck === undefined) {
          player.dayCheck = 0;
          player.dayTimer = 0;
          player.cubeQuarkDaily = 0;
          player.tesseractQuarkDaily = 0;
          player.hypercubeQuarkDaily = 0;
          player.cubeOpenedDaily = 0;
          player.tesseractOpenedDaily = 0;
          player.hypercubeOpenedDaily = 0;
      }
      if(data.loadedOct4Hotfix === undefined || player.loadedOct4Hotfix === false){
          player.loadedOct4Hotfix = true;
          player.researchPoints += player.researches[200] * 1e56;
          player.researches[200] = 0;
          buyResearch(200,true,0.01);
          console.log('Refunded 8x25, and gave you ' + format(player.researches[200]) + ' levels of new cost 8x25. Sorry!')
          player.researchPoints += player.researches[195] * 1e60;
          player.worlds += 250 * player.researches[195]
          player.researches[195] = 0;
          console.log('Refunded 8x20 and gave 250 quarks for each level you had prior to loading up the game.')
          player.wowCubes += player.cubeUpgrades[50] * 5e10
          player.cubeUpgrades[50] = 0
          console.log('Refunded w5x10. Enjoy!')
      }
      if (player.usedCorruptions[0] > 0 || data.usedCorruptions[0] > 0){
          player.prototypeCorruptions[0] = 0
          player.usedCorruptions[0] = 0
      }
  }
  