anchor.diff:  		if(topic == "Interests") return "Interests alter how a player speaks (including their skill at finding topics to rap about), some of the rungs on their echeladder, and their derived ChatHandle.";
   		return "Help text not found for " + topic + ".";
   	}
  -	void generateMoonHelp(topic, specific){
  +	String generateMoonHelp(topic, specific){
   		if(specific == "Prospit") return "Dreamers of Prospit see visions of the inevitable future in the clouds of Skaia. This is not a good thing.";
   		if(specific == "Derse") return "Dreamers of Derse are constantly bombarded by the whispers of the Horror Terrors. This is not a good thing.";
   		return "Moon help text not found for " + specific + ".";
   	}
  -	dynamic generateBloodColorHelp(topic, specific){
  +	String generateBloodColorHelp(topic, specific){
   		if(specific == "#ff0000") return "Candy red blood has no specific boost.";
   		String str = "The cooler blooded a troll is, the greater their HP and power on entering the medium. Game powers have a way of equalizing things, though. ";
   		str += specific + " is associated with a power and hp increase of: " +bloodColorToBoost(specific);
  
positive.code: 		if(specific == "Page") return "A Page distributes their associated aspect to the entire party. They start with very little of their aspect and must earn it. They can not do quests on their own, but gain power very quickly. They give a  boost to the positive parts of their Aspect, while protecting others from the negative parts";
  		if(specific == "Waste") return "Wastes gain no benefits or detriments related to their Aspect. They are associated with extreme highs and lows, either entirely avoiding their aspect or causing great destruction with it. They are assholes who won't stop hacking my damn code.";
  		if(specific == "Scribe") return "A Scribe distributes their associated aspect to the entire party. They start with very little of their aspect and must gain more through experience. They know a lot about SBURB/SGRUB. They get a great deal of the positive of their aspect, but even more of the negative. ";
          if(specific == "Sage") return "A Sage increases their own associated aspect and starts with a lot of it. They know a lot about SBURB/SGRUB. They reduce the negative parts of their Aspect through their wisdom.";
          if(specific == "Scout") return "A Scout increases their own associated aspect and starts with very little of it. They give a  boost to the positive parts of their Aspect, while reducing the damage from the negative parts. They know how to navigate their Aspect to avoid the pitfalls.";
  
  
  		return "Class help text not found for " + specific + ".";
  
negative.code: 	void drawSinglePlayerSummary(player){
  		//print("drawing: " + player.title())
  		String str = "<div class='standAloneSummary' id='createdCharacter"+ player.id + "'>";
  		String divId = player.id.toString();
  		str += this.drawCanvasSummary(player);
  		//this.drawDataBoxNoButtons(player);
  		str += "</div><div class = 'standAloneSummary'>" + this.drawDataBoxNoButtons(player) + "</div>";
  		appendHtml(div, str);
  		this.createSummaryOnCanvas(player);
  		show(querySelector(".optionBox")); //unlike char creator, always show
  		this.wireUpDataBox(player);
  	}
  
  	//TODO why the fuck did this have the same name as a handle_sprites function?
   	void drawSinglePlayerForHelper(player){
  		//print("drawing: " + player.title())
  		String str = "";
  		String divId = player.id.toString();
  		if(curSessionGlobalVar.session_id != 612 && curSessionGlobalVar.session_id != 613  && curSessionGlobalVar.session_id != 413 && curSessionGlobalVar.session_id != 1025 &&  curSessionGlobalVar.session_id != 111111)player.chatHandle = "";
  		//divId = divId.replace(new RegExp(r"""\s+""", multiLine:true), '');
  		str += "<div class='createdCharacter' id='createdCharacter"+ player.id + "'>";
  		str += "<canvas class = 'createdCharacterCanvas' id='canvas" +divId + "' width='400' height='300'>  </canvas>";
  		str += "<div class = 'folderDealy'>";
  		str += this.drawTabs(player);
  		str += "<div class = 'charOptions'>";
  		str += "<div class = 'charOptionsForms'>";
  		str += this.drawDropDowns(player);
  		str += this.drawCheckBoxes(player);
  		str += this.drawTextBoxes(player);
  