diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 66e280fbeea98694411e44088b2aeb62e3c2b945..e055fd133e9331b81456fa690b448263376df000 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -34927,7 +34927,91 @@ window.slaveMiscellaneousDatatypeCleanup = function slaveMiscellaneousDatatypeCl
 	}
 };
 
-window.ArcologyDatatypeCleanup = function ArcologyDatatypeCleanup () {
+window.PCDatatypeCleanup = function PCDatatypeCleanup() {
+	const V = State.variables;
+	const PC = V.PC;
+
+	if (PC.title !== 0) {
+		PC.title = Math.clamp(+PC.title, 0, 1) || 1;
+	}
+	if (PC.dick !== 0) {
+		PC.dick = Math.clamp(+PC.dick, 0, 1) || 1;
+	}
+	PC.vagina = Math.clamp(+PC.vagina, 0, 1) || 0;
+	PC.belly = Math.max(+PC.belly, 0) || 0;
+	PC.pregMood = Math.clamp(+PC.pregMood, 0, 2) || 0;
+	PC.labor = Math.clamp(+PC.labor, 0, 1) || 0;
+	PC.births = Math.max(+PC.births, 0) || 0;
+	PC.boobs = Math.clamp(+PC.boobs, 0, 1) || 0;
+	PC.boobsBonus = Math.clamp(+PC.boobsBonus, -3, 3) || 0;
+	PC.boobsImplant = Math.clamp(+PC.boobsImplant, 0, 1) || 0;
+	PC.butt = Math.clamp(+PC.butt, 0, 3) || 0;
+	PC.buttImplant = Math.clamp(+PC.buttImplant, 0, 1) || 0;
+	PC.balls = Math.clamp(+PC.balls, 0, 3) || 0;
+	PC.ballsImplant = Math.clamp(+PC.ballsImplant, 0, 4) || 0;
+	PC.degeneracy = Math.max(+PC.degeneracy, 0) || 0;
+	PC.birthWeek = Math.clamp(+PC.birthWeek, 0, 51) || 0;
+	if (PC.sexualEnergy !== 0 ) {
+		PC.sexualEnergy = +PC.sexualEnergy || 4;
+	}
+	PC.refreshmentType = Math.clamp(+PC.refreshmentType, 0, 6) || 0;
+	PC.trading = Math.clamp(+PC.trading, -100, 100) || 0;
+	PC.warfare = Math.clamp(+PC.warfare, -100, 100) || 0;
+	PC.slaving = Math.clamp(+PC.slaving, -100, 100) || 0;
+	PC.engineering = Math.clamp(+PC.engineering, -100, 100) || 0;
+	PC.medicine = Math.clamp(+PC.medicine, -100, 100) || 0;
+	PC.hacking = Math.clamp(+PC.hacking, -100, 100) || 0;
+	PC.cumTap = Math.max(+PC.cumTap, 0) || 0;
+	PC.mother = +PC.mother || 0;
+	PC.father = +PC.father || 0;
+	PC.birthElite = Math.max(+PC.birthElite, 0) || 0;
+	PC.birthMaster = Math.max(+PC.birthMaster, 0) || 0;
+	PC.birthDegenerate = Math.max(+PC.birthDegenerate, 0) || 0;
+	PC.birthClient = Math.max(+PC.birthClient, 0) || 0;
+	PC.birthOther = Math.max(+PC.birthOther, 0) || 0;
+	PC.birthArcOwner = Math.max(+PC.birthArcOwner, 0) || 0;
+	PC.birthCitizen = Math.max(+PC.birthCitizen, 0) || 0;
+	PC.birthSelf = Math.max(+PC.birthSelf, 0) || 0;
+	PC.slavesFathered = Math.max(+PC.slavesFathered, 0) || 0;
+	PC.slavesKnockedUp = Math.max(+PC.slavesKnockedUp, 0) || 0;
+	PC.intelligence = 100;
+	PC.face = 100;
+	PC.actualAge = Math.clamp(+PC.actualAge, 14, 80) || 35;
+	PC.physicalAge = Math.clamp(+PC.physicalAge, 14, 80) || PC.actualAge;
+	PC.visualAge = Math.clamp(+PC.visualAge, 14, 80) || PC.actualAge;
+	PC.ovaryAge = Math.clamp(+PC.ovaryAge, 14, 80) || PC.physicalAge;
+	if (V.playerAging !== 0) {
+		V.playerAging = Math.clamp(+V.playerAging, 0, 2) || 2;
+	}
+	PC.newVag = Math.clamp(+PC.newVag, 0, 1) || 0;
+	PC.reservedChildren = Math.max(+PC.reservedChildren, 0) || 0;
+	PC.reservedChildrenNursery = Math.max(+PC.reservedChildrenNursery, 0) || 0;
+	PC.fertDrugs = Math.clamp(+PC.fertDrugs, 0, 1) || 0;
+	PC.forcedFertDrugs = Math.max(+PC.forcedFertDrugs, 0) || 0;
+	PC.staminaPills = Math.clamp(+PC.staminaPills, 0, 1) || 0;
+	PC.storedCum = Math.max(+PC.storedCum, 0) || 0;
+	PC.mpreg = 0; /* So knockMeUp() may be used with the PC */
+	
+	if (PC.age !== undefined) {
+		delete PC.age;
+	}
+	if (PC.indenture !== undefined) {
+		delete PC.indenture;
+	}
+	if (PC.indentureRestrictions !== undefined) {
+		delete PC.indentureRestrictions;
+	}
+	
+	/* None of these are in use */
+	PC.bellyPreg = PC.belly;
+	PC.ageImplant = 0;
+	PC.voiceImplant = 0;
+	PC.accent = 0;
+	PC.shoulders = 0;
+	PC.shouldersImplant = 0;
+};
+
+window.ArcologyDatatypeCleanup = function ArcologyDatatypeCleanup() {
 	const V = State.variables;
 	
 	V.ACitizens = Math.max(+V.ACitizens, 0) || 0;
@@ -34936,6 +35020,11 @@ window.ArcologyDatatypeCleanup = function ArcologyDatatypeCleanup () {
 	V.ASlaveLimit = Math.max(+V.ASlaveLimit, 0) || 0;
 	V.shelterAbuse = Math.max(+V.shelterAbuse, 0) || 0;
 	
+	V.arcologies[0].prosperity = Math.max(+V.arcologies[0].prosperity, 0) || 0;
+	V.AProsperityCap = Math.max(+V.AProsperityCap, 0) || 0;
+	V.arcologies[0].ownership = Math.clamp(+V.arcologies[0].ownership, 0, 100) || 0;
+	V.arcologies[0].minority = Math.clamp(+V.arcologies[0].minority, 0, 100) || 0;
+	
 	V.economy = Math.max(+V.economy, 20) || 100;
 	V.difficultySwitch = Math.clamp(+V.difficultySwitch, 0, 1) || 0;
 	V.localEcon = Math.max(+V.localEcon, 20) || V.economy;
@@ -34981,14 +35070,4 @@ window.ArcologyDatatypeCleanup = function ArcologyDatatypeCleanup () {
 	V.TCR.schoolProsperity = Math.clamp(+V.TCR.schoolProsperity, -10, 10) || 0;
 	V.TFS.studentsBought = Math.max(+V.TFS.studentsBought, 0) || 0;
 	V.TFS.schoolProsperity = Math.clamp(+V.TFS.schoolProsperity, -10, 10) || 0;
-
-	V.arcologies[0].prosperity = Math.max(+V.arcologies[0].prosperity, 0) || 0;
-	V.AProsperityCap = Math.max(+V.AProsperityCap, 0) || 0;
-	V.arcologies[0].ownership = Math.clamp(+V.arcologies[0].ownership, 0, 100) || 0;
-	V.arcologies[0].minority = Math.clamp(+V.arcologies[0].minority, 0, 100) || 0;
-
-	/* Will be moved when I get around to creating PCDatatypeCleanup */
-	V.PC.actualAge = Math.clamp(+V.PC.actualAge, 14, 80) || 35;
-	V.PC.physicalAge = Math.clamp(+V.PC.physicalAge, 14, 80) || V.PC.actualAge;
-	V.PC.visualAge = Math.clamp(+V.PC.visualAge, 14, 80) || V.PC.actualAge;
 };
diff --git a/player variables documentation - Pregmod.txt b/player variables documentation - Pregmod.txt
index a7ce3dab9606614ff3aa62dafd18c916ad82d222..f5ae18e6c5ab64036fee38530b6d89b5572e7268 100644
--- a/player variables documentation - Pregmod.txt	
+++ b/player variables documentation - Pregmod.txt	
@@ -171,6 +171,8 @@ Your career before becoming owner
 "escort"
 "servant"
 "gang"
+"BlackHat"
+"arcology owner"
 
 rumor:
 
@@ -180,14 +182,6 @@ rumor:
 "social engineering"
 "luck"
 
-indenture:
-
-no effect
-
-indentureRestrictions:
-
-no effect
-
 birthWeek:
 
 your week of birth in a year
@@ -196,7 +190,7 @@ accepts int between 0-51
 age:
 
 (uncommon in events)
-your age (deprecated)
+your age (obsolete, not in use)
 0 - young
 1 - typical
 2 - middle age
@@ -386,18 +380,18 @@ actualAge:
 
 (uncommon in events)
 your actualAge
-16+
+14+
 
 physicalAge:
 
 your body's age
-16+
+14+
 
 visualAge:
 
 (uncommon in events)
 how old you look
-16+
+14+
 
 boobsImplant:
 
@@ -425,6 +419,7 @@ how big your balls are (requires dick == 1)
 0 - normal
 1 - big
 2 - huge
+3 - massive
 
 ballsImplant:
 
@@ -437,7 +432,7 @@ how big your balls are (requires dick == 1)
 
 ageImplant:
 
-have your had age altering surgery
+have you had age altering surgery, not yet in use
 0 - no
 1 - yes
 
diff --git a/src/cheats/PCCheatMenu.tw b/src/cheats/PCCheatMenu.tw
index 1e21631262049e458e26260e4eee262755f41951..de1c4e92e3218014a5cde9db16a449931a768ff6 100644
--- a/src/cheats/PCCheatMenu.tw
+++ b/src/cheats/PCCheatMenu.tw
@@ -68,7 +68,7 @@ Title: ''<<if $tempSlave.title == 0>>Master<<else>>Mistress<</if>>''
 <br>''Dick'': <<textbox "$tempSlave.dick" $tempSlave.dick>>
 <br>''Vagina'': <<textbox "$tempSlave.vagina" $tempSlave.vagina>>
 <<if $tempSlave.dick == 1>>
-	<br>''BallSize'': <<textbox "$tempSlave.balls" $tempSlave.balls>> //0 - normal 1 - big 2 - huge//
+	<br>''BallSize'': <<textbox "$tempSlave.balls" $tempSlave.balls>> //0: normal, 1: big, 2: huge//
 	<br>''BallsImplant'': <<textbox "$tempSlave.ballsImplant" $tempSlave.ballsImplant>> //0: normal, 1: large, 2: huge, 3: enormous, 4: monstrous//
 <</if>>
 
@@ -77,7 +77,7 @@ Title: ''<<if $tempSlave.title == 0>>Master<<else>>Mistress<</if>>''
 <br>''Physical Age'': <<textbox "$tempSlave.physicalAge" $tempSlave.physicalAge>>
 <br>''Visual Age'': <<textbox "$tempSlave.visualAge" $tempSlave.visualAge>>
 <br>''Ovary Age'': <<textbox "$tempSlave.ovaryAge" $tempSlave.ovaryAge>>
-<br>''Age Implant'': <<textbox "$tempSlave.ageImplant" $tempSlave.ageImplant>> //0: no surgery, 1: age altering surgery//
+/*<br>''Age Implant'': <<textbox "$tempSlave.ageImplant" $tempSlave.ageImplant>> //0: no surgery, 1: age altering surgery// */
 <br>''Player Aging'': <<textbox "$playerAging" $playerAging>> //0: no aging, 1: no aging, but birthdays, 2: aging//
 
 <<if $tempSlave.vagina == 1>>
diff --git a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw
index ce3f062ab0d6228451dd28dcb83428d97eec89d5..c38f9f52ef490cddbe92195451b8753e4e245976 100644
--- a/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw
+++ b/src/cheats/PCCheatMenuCheatDatatypeCleanup.tw
@@ -20,7 +20,6 @@
 <<set $tempSlave.preg = Number($tempSlave.preg) || 0>>
 <<set $tempSlave.pregSource = Number($tempSlave.pregSource) || 0>>
 <<set $tempSlave.pregType = Number($tempSlave.pregType) || 0>>
-<<set $tempSlave.pregMood = Number($tempSlave.pregMood) || 0>>
 <<set WombInit($tempSlave)>> /* just to make sure */
 <<set $tempSlave.womb.length = 0>> /* simple way to delete all fetuses */
 <<set WombImpregnate($tempSlave, $tempSlave.pregType, $tempSlave.pregSource, $tempSlave.preg)>> /* recreates fetuses */
@@ -31,41 +30,20 @@
 	<<set $tempSlave.belly = 0>>
 	<<set $tempSlave.pregWeek = 0>>
 <</if>>
-<<set $tempSlave.pregMood = Number($tempSlave.pregMood) || 0>>
-<<set $tempSlave.boobs = ($tempSlave.boobs == 0 ? 0 : 1)>>
+<<run PCDatatypeCleanup()>>
+
 <<if $tempSlave.boobs == 0>>
 	<<set $tempSlave.boobsBonus = 0>>
 	<<set $tempSlave.boobsImplant = 0>>
-<<else>>
-	<<set $tempSlave.boobsBonus = Number($tempSlave.boobsBonus) || 0>>
-	<<set $tempSlave.boobsImplant = Number($tempSlave.boobsImplant) || 0>>
 <</if>>
-<<set $tempSlave.butt = Number($tempSlave.butt) || 0>>
 <<if $tempSlave.butt == 0>>
 	<<set $tempSlave.buttImplant = 0>>
-<<else>>
-	<<set $tempSlave.buttImplant = ($tempSlave.buttImplant == 0 ? 0 : 1)>>
 <</if>>
-<<set $tempSlave.dick = ($tempSlave.dick == 0 ? 0 : 1)>>
-<<set $tempSlave.vagina = ($tempSlave.vagina == 0 ? 0 : 1)>>
-<<if $tempSlave.dick == 1>>
-	<<set $tempSlave.balls = Number($tempSlave.balls) || 0>>
-	<<set $tempSlave.ballsImplant = Number($tempSlave.ballsImplant) || 0>>
-<<else>>
+<<if $tempSlave.dick == 0>>
 	<<set $tempSlave.balls = 0>>
 	<<set $tempSlave.ballsImplant = 0>>
 <</if>>
 
-<<set $tempSlave.ageImplant = Number($tempSlave.ageImplant) || 0>>
-<<set $playerAging = Number($playerAging) || 0>>
-<<set $tempSlave.ageImplant = Number($tempSlave.ageImplant) || 0>>
-<<set $tempSlave.physicalAge = Number($tempSlave.physicalAge) || 14>>
-<<set $tempSlave.visualAge = Number($tempSlave.visualAge) || 14>>
-<<set $tempSlave.actualAge = Number($tempSlave.actualAge) || 14>>
-<<set $tempSlave.ovaryAge = Number($tempSlave.ovaryAge) || 14>>
-<<set $tempSlave.mother = Number($tempSlave.mother) || 0>>
-<<set $tempSlave.father = Number($tempSlave.father) || 0>>
-
 You perform the dark rituals, pray to the dark gods and sold your soul for the power to reshape your body and life at will. What a cheater!
 
 <<set $PC = clone($tempSlave)>>
diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index bf4afe9557e08c2ac86d9d921f1fa62b5b4aa6a7..c94a3c66b058ff786fa91cdc4382bffe801e5cbd 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -162,82 +162,9 @@ You should have received a copy of the GNU General Public License along with thi
 		<<set $slaves[_i].vaginalCount = 0>>
 	<</for>>
 	<<set $slavesOriginal = []>> /* not used by pregmod */
-	<<if ndef $PC.intelligence>>
-		<<set $PC.intelligence = 100>>
-	<</if>>
-	<<if ndef $PC.face>>
-		<<set $PC.face = 100>>
-	<</if>>
-	<<if ndef $PC.actualAge>>
-		<<if $PC.age == 1>>
-			<<set $PC.actualAge = 20>>
-		<<elseif $PC.age == 2>>
-			<<set $PC.actualAge = 35>>
-		<<elseif $PC.age == 3>>
-			<<set $PC.actualAge = 50>>
-		<</if>>
-	<</if>>
-	<<if ndef $PC.visualAge>>
-		<<set $PC.visualAge = $PC.actualAge>>
-	<</if>>
-	<<if ndef $PC.physicalAge>>
-		<<set $PC.physicalAge = $PC.actualAge>>
-	<</if>>
-	<<if ndef $PC.birthWeek>>
-		<<set $PC.birthWeek = 0>>
-	<</if>>
 	<<if ndef $PC.markings>>
 		<<set $PC.markings = "none">>
 	<</if>>
-	<<if ndef $PC.mpreg>> /* for <<KnockMeUp $PC>> */
-		<<set $PC.mpreg = 0>>
-	<</if>>
-	<<if ndef $PC.slavesKnockedUp>>
-		<<set $PC.slavesKnockedUp = 0>>
-	<</if>>
-	<<if ndef $PC.slavesFathered>>
-		<<set $PC.slavesFathered = 0>>
-	<</if>>
-	<<if ndef $PC.pronoun>>
-		<<if $PC.title == 1>>
-			<<set $PC.pronoun = "he", $PC.possessive = "his", $PC.object = "him">>
-		<<else>>
-			<<set $PC.pronoun = "she", $PC.possessive = "her", $PC.object = "her">>
-		<</if>>
-	<</if>>
-	<<if ndef $PC.pregKnown>>
-		<<if $PC.preg > 0>>
-			<<set $PC.pregKnown = 1>>
-		<<else>>
-			<<set $PC.pregKnown = 0>>
-		<</if>>
-	<</if>>
-	<<if ndef $PC.pregType>>
-		<<if $PC.preg > 0>>
-			<<set $PC.pregType = 1>>
-		<<else>>
-			<<set $PC.pregType = 0>>
-		<</if>>
-	<</if>>
-	<<if ndef $PC.belly>>
-		<<if $PC.preg > 0>>
-			<<set $PC.belly = getPregBellySize($PC)>>
-		<<else>>
-			<<set $PC.belly = 0>>
-		<</if>>
-	<</if>>
-	<<if ndef $PC.degeneracy>>
-		<<set $PC.degeneracy = 0>>
-	<</if>>
-	<<if ndef $PC.pregWeek>>
-		<<if $PC.preg > 0>>
-			<<set $PC.pregWeek = $PC.preg>>
-		<<else>>
-			<<set $PC.pregWeek = 0>>
-		<</if>>
-	<</if>>
-	<<set $PC.reservedChildren = 0>>
-	<<set $PC.reservedChildrenNursery = 0>>
 <<else>>
 	<<set $slaves = []>>
 	<<set $slavesOriginal = []>> /* not used by pregmod */
diff --git a/src/js/datatypeCleanupJS.tw b/src/js/datatypeCleanupJS.tw
index 96df97919002d1e265b1c349ef6ff142760ff0f0..67819770573fa1d87515a53ac5360700856697f4 100644
--- a/src/js/datatypeCleanupJS.tw
+++ b/src/js/datatypeCleanupJS.tw
@@ -597,7 +597,91 @@ window.slaveMiscellaneousDatatypeCleanup = function slaveMiscellaneousDatatypeCl
 	}
 };
 
-window.ArcologyDatatypeCleanup = function ArcologyDatatypeCleanup () {
+window.PCDatatypeCleanup = function PCDatatypeCleanup() {
+	const V = State.variables;
+	const PC = V.PC;
+
+	if (PC.title !== 0) {
+		PC.title = Math.clamp(+PC.title, 0, 1) || 1;
+	}
+	if (PC.dick !== 0) {
+		PC.dick = Math.clamp(+PC.dick, 0, 1) || 1;
+	}
+	PC.vagina = Math.clamp(+PC.vagina, 0, 1) || 0;
+	PC.belly = Math.max(+PC.belly, 0) || 0;
+	PC.pregMood = Math.clamp(+PC.pregMood, 0, 2) || 0;
+	PC.labor = Math.clamp(+PC.labor, 0, 1) || 0;
+	PC.births = Math.max(+PC.births, 0) || 0;
+	PC.boobs = Math.clamp(+PC.boobs, 0, 1) || 0;
+	PC.boobsBonus = Math.clamp(+PC.boobsBonus, -3, 3) || 0;
+	PC.boobsImplant = Math.clamp(+PC.boobsImplant, 0, 1) || 0;
+	PC.butt = Math.clamp(+PC.butt, 0, 3) || 0;
+	PC.buttImplant = Math.clamp(+PC.buttImplant, 0, 1) || 0;
+	PC.balls = Math.clamp(+PC.balls, 0, 3) || 0;
+	PC.ballsImplant = Math.clamp(+PC.ballsImplant, 0, 4) || 0;
+	PC.degeneracy = Math.max(+PC.degeneracy, 0) || 0;
+	PC.birthWeek = Math.clamp(+PC.birthWeek, 0, 51) || 0;
+	if (PC.sexualEnergy !== 0 ) {
+		PC.sexualEnergy = +PC.sexualEnergy || 4;
+	}
+	PC.refreshmentType = Math.clamp(+PC.refreshmentType, 0, 6) || 0;
+	PC.trading = Math.clamp(+PC.trading, -100, 100) || 0;
+	PC.warfare = Math.clamp(+PC.warfare, -100, 100) || 0;
+	PC.slaving = Math.clamp(+PC.slaving, -100, 100) || 0;
+	PC.engineering = Math.clamp(+PC.engineering, -100, 100) || 0;
+	PC.medicine = Math.clamp(+PC.medicine, -100, 100) || 0;
+	PC.hacking = Math.clamp(+PC.hacking, -100, 100) || 0;
+	PC.cumTap = Math.max(+PC.cumTap, 0) || 0;
+	PC.mother = +PC.mother || 0;
+	PC.father = +PC.father || 0;
+	PC.birthElite = Math.max(+PC.birthElite, 0) || 0;
+	PC.birthMaster = Math.max(+PC.birthMaster, 0) || 0;
+	PC.birthDegenerate = Math.max(+PC.birthDegenerate, 0) || 0;
+	PC.birthClient = Math.max(+PC.birthClient, 0) || 0;
+	PC.birthOther = Math.max(+PC.birthOther, 0) || 0;
+	PC.birthArcOwner = Math.max(+PC.birthArcOwner, 0) || 0;
+	PC.birthCitizen = Math.max(+PC.birthCitizen, 0) || 0;
+	PC.birthSelf = Math.max(+PC.birthSelf, 0) || 0;
+	PC.slavesFathered = Math.max(+PC.slavesFathered, 0) || 0;
+	PC.slavesKnockedUp = Math.max(+PC.slavesKnockedUp, 0) || 0;
+	PC.intelligence = 100;
+	PC.face = 100;
+	PC.actualAge = Math.clamp(+PC.actualAge, 14, 80) || 35;
+	PC.physicalAge = Math.clamp(+PC.physicalAge, 14, 80) || PC.actualAge;
+	PC.visualAge = Math.clamp(+PC.visualAge, 14, 80) || PC.actualAge;
+	PC.ovaryAge = Math.clamp(+PC.ovaryAge, 14, 80) || PC.physicalAge;
+	if (V.playerAging !== 0) {
+		V.playerAging = Math.clamp(+V.playerAging, 0, 2) || 2;
+	}
+	PC.newVag = Math.clamp(+PC.newVag, 0, 1) || 0;
+	PC.reservedChildren = Math.max(+PC.reservedChildren, 0) || 0;
+	PC.reservedChildrenNursery = Math.max(+PC.reservedChildrenNursery, 0) || 0;
+	PC.fertDrugs = Math.clamp(+PC.fertDrugs, 0, 1) || 0;
+	PC.forcedFertDrugs = Math.max(+PC.forcedFertDrugs, 0) || 0;
+	PC.staminaPills = Math.clamp(+PC.staminaPills, 0, 1) || 0;
+	PC.storedCum = Math.max(+PC.storedCum, 0) || 0;
+	PC.mpreg = 0; /* So knockMeUp() may be used with the PC */
+	
+	if (PC.age !== undefined) {
+		delete PC.age;
+	}
+	if (PC.indenture !== undefined) {
+		delete PC.indenture;
+	}
+	if (PC.indentureRestrictions !== undefined) {
+		delete PC.indentureRestrictions;
+	}
+	
+	/* None of these are in use */
+	PC.bellyPreg = PC.belly;
+	PC.ageImplant = 0;
+	PC.voiceImplant = 0;
+	PC.accent = 0;
+	PC.shoulders = 0;
+	PC.shouldersImplant = 0;
+};
+
+window.ArcologyDatatypeCleanup = function ArcologyDatatypeCleanup() {
 	const V = State.variables;
 	
 	V.ACitizens = Math.max(+V.ACitizens, 0) || 0;
@@ -656,9 +740,4 @@ window.ArcologyDatatypeCleanup = function ArcologyDatatypeCleanup () {
 	V.TCR.schoolProsperity = Math.clamp(+V.TCR.schoolProsperity, -10, 10) || 0;
 	V.TFS.studentsBought = Math.max(+V.TFS.studentsBought, 0) || 0;
 	V.TFS.schoolProsperity = Math.clamp(+V.TFS.schoolProsperity, -10, 10) || 0;
-
-	/* Will be moved when I get around to creating PCDatatypeCleanup */
-	V.PC.actualAge = Math.clamp(+V.PC.actualAge, 14, 80) || 35;
-	V.PC.physicalAge = Math.clamp(+V.PC.physicalAge, 14, 80) || V.PC.actualAge;
-	V.PC.visualAge = Math.clamp(+V.PC.visualAge, 14, 80) || V.PC.actualAge;
 };
diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw
index f7894a891d055db46ce9b5af87b8a5b982e3f227..b0bfbacb98324b7032a6bc11fdac3d442d88cf99 100644
--- a/src/pregmod/widgets/pregmodWidgets.tw
+++ b/src/pregmod/widgets/pregmodWidgets.tw
@@ -1,7 +1,7 @@
 :: pregmod widgets [nobr widget]
 
 <<widget "initPC">>
-	<<set $PC = {name: "Anonymous", surname: 0, title: 1, ID: -1, pronoun: "he", possessive: "him", object: "his", dick: 1, vagina: 0, preg: 0, pregType: 0, pregWeek: 0, pregKnown: 0, belly: 0, bellyPreg: 0, mpreg: 0, pregSource: 0, pregMood: 0, labor: 0, births: 0, boobsBonus: 0, degeneracy: 0, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, career: "capitalist", rumor: "wealth", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), age: 2, sexualEnergy: 4, refreshment: "cigar", refreshmentType: 0, trading: 0, warfare: 0, slaving: 0, engineering: 0, medicine: 0, hacking: 0, cumTap: 0, race: "white", origRace: "white", skin: "white", origSkin: "white", markings: "none", eyeColor: "blue", origEye: "blue", hColor: "blonde", origHColor: "blonde", nationality: "Stateless", father: 0, mother: 0, sisters: 0, daughters: 0, birthElite: 0, birthMaster: 0, birthDegenerate: 0, birthClient: 0, birthOther: 0, birthArcOwner: 0, birthCitizen: 0, birthSelf: 0, slavesFathered: 0, slavesKnockedUp: 0, intelligence: 100, face: 100, actualAge: 35, physicalAge: 35, visualAge: 35, birthWeek: 0, boobsImplant: 0, butt: 0, buttImplant: 0, balls: 0, ballsImplant: 0, ageImplant: 0, newVag: 0, reservedChildren: 0, reservedChildrenNursery: 0, fertDrugs: 0, forcedFertDrugs: 0, staminaPills: 0, ovaryAge: 35, storedCum: 0}>>
+	<<set $PC = {name: "Anonymous", surname: 0, title: 1, ID: -1, pronoun: "he", possessive: "him", object: "his", dick: 1, vagina: 0, preg: 0, pregType: 0, pregWeek: 0, pregKnown: 0, belly: 0, bellyPreg: 0, mpreg: 0, pregSource: 0, pregMood: 0, labor: 0, births: 0, boobsBonus: 0, degeneracy: 0, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, career: "capitalist", rumor: "wealth", birthWeek: random(0,51), age: 2, sexualEnergy: 4, refreshment: "cigar", refreshmentType: 0, trading: 0, warfare: 0, slaving: 0, engineering: 0, medicine: 0, hacking: 0, cumTap: 0, race: "white", origRace: "white", skin: "white", origSkin: "white", markings: "none", eyeColor: "blue", origEye: "blue", pupil: "circular", sclerae: "white", hColor: "blonde", origHColor: "blonde", nationality: "Stateless", father: 0, mother: 0, sisters: 0, daughters: 0, birthElite: 0, birthMaster: 0, birthDegenerate: 0, birthClient: 0, birthOther: 0, birthArcOwner: 0, birthCitizen: 0, birthSelf: 0, slavesFathered: 0, slavesKnockedUp: 0, intelligence: 100, face: 100, actualAge: 35, physicalAge: 35, visualAge: 35, boobsImplant: 0, butt: 0, buttImplant: 0, balls: 0, ballsImplant: 0, ageImplant: 0, newVag: 0, reservedChildren: 0, reservedChildrenNursery: 0, fertDrugs: 0, forcedFertDrugs: 0, staminaPills: 0, ovaryAge: 35, storedCum: 0}>>
 
 	<<set WombInit($PC)>>
 
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index f6ea32ebd7d01d8bb62f50565b955ff2eec32c9d..7455f5440262fd0ae621055b855edf614c63cb25 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -212,42 +212,18 @@
 
 /* pregmod stuff */
 
-<<if ndef $PC.intelligence>>
-	<<set $PC.intelligence = 100>>
-<</if>>
-<<if ndef $PC.face>>
-	<<set $PC.face = 100>>
-<</if>>
 <<if ndef $PC.actualAge>>
-	<<if $PC.age == 1>>
+	<<if $PC.age === 1>>
 		<<set $PC.actualAge = 20>>
-	<<elseif $PC.age == 2>>
-		<<set $PC.actualAge = 35>>
-	<<elseif $PC.age == 3>>
+	<<elseif $PC.age === 3>>
 		<<set $PC.actualAge = 50>>
+	<<else>>
+		<<set $PC.actualAge = 35>>
 	<</if>>
 <</if>>
-<<if ndef $PC.birthWeek>>
-	<<set $PC.birthWeek = 0>>
-<</if>>
 <<if ndef $PC.markings>>
 	<<set $PC.markings = "none">>
 <</if>>
-<<if ndef $PC.mpreg>> /* for <<KnockMeUp $PC>> */
-	<<set $PC.mpreg = 0>>
-<</if>>
-<<if ndef $PC.slavesKnockedUp>>
-	<<set $PC.slavesKnockedUp = 0>>
-<</if>>
-<<if ndef $PC.slavesFathered>>
-	<<set $PC.slavesFathered = 0>>
-<</if>>
-<<if ndef $PC.reservedChildren>>
-	<<set $PC.reservedChildren = 0>>
-<</if>>
-<<if ndef $PC.reservedChildrenNursery>>
-	<<set $PC.reservedChildrenNursery = 0>>
-<</if>>
 <<if ndef $PC.pronoun>>
 	<<if $PC.title == 1>>
 		<<set $PC.pronoun = "he", $PC.possessive = "his", $PC.object = "him">>
@@ -283,12 +259,6 @@
 		<<set $PC.belly = 0>>
 	<</if>>
 <</if>>
-<<if ndef $PC.fertDrugs>>
-	<<set $PC.fertDrugs = 0>>
-<</if>>
-<<if ndef $PC.forcedFertDrugs>>
-	<<set $PC.forcedFertDrugs = 0>>
-<</if>>
 <<if ndef $PC.skin>>
 	<<set $PC.skin = "white">>
 <</if>>
@@ -357,21 +327,10 @@
 <<if ndef $PC.nationality>>
 	<<set $PC.nationality = "Stateless">>
 <</if>>
-<<if ndef $PC.ovaryAge>>
-	<<set $PC.ovaryAge = $PC.physicalAge>>
-<</if>>
-<<if ndef $PC.staminaPills>>
-	<<set $PC.staminaPills = 0>>
-<</if>>
-<<if ndef $PC.degeneracy>>
-	<<set $PC.degeneracy = 0>>
-<</if>>
-<<if ndef $PC.storedCum>>
-	<<set $PC.storedCum = 0>>
-<</if>>
 <<if $PC.boobsBonus == -0.5>>
 	<<set $PC.boobsBonus = -1>>
 <</if>>
+<<run PCDatatypeCleanup()>>
 
 <<if ndef $universalRulesImmobileSlavesMaintainMuscles>>
 	<<set $universalRulesImmobileSlavesMaintainMuscles = 0>>
@@ -2531,7 +2490,6 @@ Setting missing global variables:
 	<</if>>
 <</if>>
 <<if $releaseID < 1031>>
-	<<set $PC.intelligence = 100>>
 	<<if $traitor != 0>>
 		<<if $traitor.intelligence == -3>>
 			<<set $traitor.intelligence = -100>>
@@ -3405,10 +3363,6 @@ Setting missing slave variables:
 <<HeroSlavesCleanup>>
 Done!
 
-<<if ndef $PC.hacking>>
-	<<set $PC.hacking = 0>>
-<</if>>
-
 /* Sec Exp */
 <<if $secExp == 1>>
 <br>
diff --git a/src/uncategorized/endWeek.tw b/src/uncategorized/endWeek.tw
index ac03144992d4d747582c89436a5c585eeb277acf..920eef66c6436f6e55bd535de629255ed723a3f2 100644
--- a/src/uncategorized/endWeek.tw
+++ b/src/uncategorized/endWeek.tw
@@ -128,7 +128,7 @@
 <<elseif $PC.physicalAge >= 21>>
 	<<set $PC.sexualEnergy += 3>>
 <<elseif $PC.physicalAge >= 13>>
-	<<set $PC.sexualEnergy +=4>>
+	<<set $PC.sexualEnergy += 4>>
 <<elseif $PC.physicalAge == 12>>
 	<<set $PC.sexualEnergy += 1>>
 <<elseif $PC.physicalAge == 11>>
diff --git a/src/uncategorized/reputation.tw b/src/uncategorized/reputation.tw
index ec4c37294aaa0cf64b15834e5539240f4f574294..0e09c9466ab82742cb28568543c7881c9bba3ef7 100644
--- a/src/uncategorized/reputation.tw
+++ b/src/uncategorized/reputation.tw
@@ -658,7 +658,7 @@ On formal occasions, you are announced as $PCTitle.
 		<<set $enduringRep = 0>>
 	<<elseif $PC.degeneracy > 75>>
 		There are @@.red;severe rumors@@ about you spreading across the arcology.
-		<<set $rep -= 10*($PC.degeneracy*2)>>
+		<<set $rep -= 20*($PC.degeneracy)>>
 	<<elseif $PC.degeneracy > 50>>
 		There are @@.red;bad rumors@@ about you spreading across the arcology.
 		<<set $rep -= 10*$PC.degeneracy>>
@@ -667,7 +667,7 @@ On formal occasions, you are announced as $PCTitle.
 		<<set $rep -= 5*$PC.degeneracy>>
 	<<elseif $PC.degeneracy > 10>>
 		There are @@.red;minor rumors@@ about you spreading across the arcology.
-		<<set $rep -= $PC.degeneracy*2>>
+		<<set $rep -= 2*$PC.degeneracy>>
 	<<else>>
 		The occasional rumor about you can be heard throughout the arcology.
 		<<set $rep -= $PC.degeneracy>>