diff --git a/src/SpecialForce/SpecialForce.js b/src/SpecialForce/SpecialForce.js
index a513e6995b952043bd768e2b99fc87cee0c5c34a..bf456619ec790bb3c242d750ea5c590359011107 100644
--- a/src/SpecialForce/SpecialForce.js
+++ b/src/SpecialForce/SpecialForce.js
@@ -4,7 +4,7 @@ App.SF.Init = function() {
 	if (V.SF.Depravity === undefined || V.SF.Depravity === 0) {
 		Object.assign(V.SF,
 		{
-			Active:2, Depravity:0, Size:0, Upgrade:0, Gift:0,
+			Depravity:0, Size:0, Upgrade:0, Gift:0,
 			UC:{Assign:0, Lock:0, num:0}, ROE:"hold", Target:"recruit", Regs:"strict",
 			Caps:"The Special Force", Lower:"the special force", Subsidy:1,
 			Squad:{
@@ -18,6 +18,7 @@ App.SF.Init = function() {
 				TotalMenials:0, Mercs:0, TotalMercs:0
 			}
 		});
+		if (V.SF.Toggle > 0) V.SF.Active = 2;
 		//V.arcologies[0].SFRaid = 1; V.arcologies[0].SFRaidTarget = -1;
 	}
 	if (typeof V.SF.MercCon === "undefined") {
@@ -181,15 +182,15 @@ App.SF.BC = function() {
 		} else {
 			App.SF.Init();
 		}
-	} else if (typeof V.SF === "object" && V.SF.Toggle > 0) {
+	} else if (typeof V.SF === "object") {
 		if (V.SF.MercCon && V.SF.MercCon.View) delete V.SF.MercCon.View;
 		if (V.SF.UC === undefined) {
 			if (V.SF.SpecOps !== undefined && V.SF.SpecOpsLock !== undefined) {
 				V.SF.UC = {Assign:V.SF.SpecOps, Lock:V.SF.SpecOpsLock};
-				delete V.SF.SpecOps; delete V.SF.SpecOpsLock;
 			} else {
 				V.SF.UC = {Assign:0, Lock:0};
 			}
+			delete V.SF.SpecOps; delete V.SF.SpecOpsLock;
 		}
 		if (V.SF.UC.num === undefined) V.SF.UC.num = V.SFUC || 0; delete V.SFUC;
 		if (V.SF.Active === -1) App.SF.Init();
@@ -1334,7 +1335,7 @@ App.SF.Count = function() {
 		T.NY = S.AircraftCarrier + S.Sub + S.HAT; T.Base += T.NY;
 		T.NYU = T.ACU + T.SubU + T.HATU; T.max += T.NYU;
 	}
-	V.SF.Size = T.Base; V.SF.Size = C(V.SF.Size, 1, T.max); T.T1 = 0;
+	V.SF.Size = T.Base; V.SF.Size = C(V.SF.Size, 0, T.max); T.T1 = 0;
 
 	if (E > 100) {
 		T.Env = 4;
diff --git a/src/SpecialForce/Upgrades.tw b/src/SpecialForce/Upgrades.tw
index 2715f3ec8693d4c03ad5f6ba1338a859252f80ca..b9b91790c0a8d8dfc481d1f761f59f1c550c4159 100644
--- a/src/SpecialForce/Upgrades.tw
+++ b/src/SpecialForce/Upgrades.tw
@@ -1,173 +1,282 @@
 :: Upgrades [nobr]
+<br><br>
+<<if $SF.Size !== _max>>
+	Total upgrade progress: <<print progress($SF.Size,_max)>> $SF.Size/_max(<<print ($SF.Size/_max).toFixed(2)*100>>%) <<if $SF.Size < 30>> <br>//<<print (30-$SF.Size )>> more upgrades is needed until the next tier unlocks.// <</if>>
+<<else>>
+	There are no more upgrades available.
+<</if>>
 
-	<br><br> <<if $SF.Size !== _max>> Total upgrade progress: <<print progress($SF.Size,_max)>> $SF.Size/_max(<<print ($SF.Size/_max).toFixed(2)*100>>%) <<if $SF.Size < 30>><br>//<<print (30-$SF.Size )>> more upgrades is needed until the next tier unlocks.//<</if>>
-	<<else>>There are no more upgrades available.<</if>>
-	<<if $SF.Upgrade > 0 && ($SF.Size !== _max)>>
+<<if $SF.Upgrade > 0 && ($SF.Size !== _max)>>
 	<<set _cost = Math.ceil(Math.abs($cash*.05*(1.25+($SF.Size/1000))))>>
-	<br>[[Re-unlock upgrading.|Firebase][$SF.Upgrade = 0,cashX(forceNeg(_cost), "specialForces")]] @@.red;<<print cashFormat(_cost)>>@@ <</if>>
-	<<if ($SF.Size < 30||$SF.Size !== _max) && $SF.Upgrade < 1>>
-
-		<br>Which facility or equipment do you wish to upgrade this week? <br>
-		<<if $SF.Squad.Firebase < 5||_T1 && $SF.Squad.Firebase < _FU>> <br>
-			<<set _cF = App.SF.UpgradeCost(100000,$SF.Squad.Firebase)>>
-			<<if $cash >= _cF>>
-				[[Upgrade Firebase|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Firebase++, cashX(forceNeg(_cF), "specialForces")]]
-			<<else>>//Cannot afford to upgrade the Firebase.//<</if>>
-			//Costs @@.red;<<print cashFormat(_cF)>>@@// <span style="float:right;"> <<print progress($SF.Squad.Firebase)>> </span><br>
-		<<elseif $SF.Squad.Firebase === _FU>> <br>//The Firebase has been fully upgraded.//<br><</if>>
-
-		<<if $SF.Squad.Armoury < 5||_T1 && $SF.Squad.Armoury < _AU>> <br>
-			<<set _cA = App.SF.UpgradeCost(40000,$SF.Squad.Armoury)>>
-			<<if $cash >= _cA>>
-				[[Upgrade Armory|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Armoury++, cashX(forceNeg(_cA), "specialForces")]]
-			<<else>>//Cannot afford to upgrade the Armory.//<</if>>
-			//Costs @@.red;<<print cashFormat(_cA)>>@@// <span style="float:right;"> <<print progress($SF.Squad.Armoury)>> </span><br>
-		<<elseif $SF.Squad.Armoury === _AU>> //The Armory has been fully upgraded.//<br><</if>>
-
-		<<if $SF.Squad.Drugs < 5||_T1 && $SF.Squad.Drugs < _DrugsU>> <br>
-			<<set _cDrugs = App.SF.UpgradeCost(40000,$SF.Squad.Drugs)>>
-			<<if $cash >= _cDrugs>>
-				[[Upgrade Drug Lab|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Drugs++, cashX(forceNeg(_cDrugs), "specialForces")]]
-			<<else>>//Cannot afford to upgrade the Drug Lab.//<</if>>
-			//Costs @@.red;<<print cashFormat(_cDrugs)>>@@// <span style="float:right;"> <<print progress($SF.Squad.Drugs)>> </span><br>
-		<<elseif $SF.Squad.Drugs === _DrugsU>> //The Drug Lab has been fully upgraded.//<br><</if>>
-
-		<<if $SF.Squad.Firebase >= 2 && ($SF.Squad.Drones < 5 ||_T1 && $SF.Squad.Drones < _DU)>> <br>
-			<<set _cDrones = App.SF.UpgradeCost(45000,$SF.Squad.Drones)>>
-			<<if $cash >= _cDrones>>
-				[[Upgrade Drone Bay|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Drones++, cashX(forceNeg(_cDrones), "specialForces")]]
-			<<else>>//Cannot afford to upgrade the Drone Bay.//<</if>>
-			//Costs @@.red;<<print cashFormat(_cDrones)>>@@// <span style="float:right;"> <<print progress($SF.Squad.Drones)>> </span><br><br>
-		<<elseif $SF.Squad.Drones === _DU>> //The Drone Bay has been fully upgraded.//<br><</if>>
-
-		<<if $SF.Squad.Firebase >= 1 && $terrain !== "oceanic">><br>''Garage''<br>
-			<div style="margin-left:2em"><<if ($SF.Squad.AV < 5||_T1 && $SF.Squad.AV < _AVU)>>
-				<<set _cAV = App.SF.UpgradeCost(60000,$SF.Squad.AV)>>
-				<<if $cash >= _cAV>>
-					[[Upgrade Attack Vehicle Fleet|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.AV++, cashX(forceNeg(_cAV), "specialForces")]]
-				<<else>>//Cannot afford to upgrade the Attack Vehicle Fleet.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cAV)>>@@// <span style="float:right;"><<print progress($SF.Squad.AV)>></span>
-			<<elseif $SF.Squad.AV === _AVU>> //The Attack Vehicle Fleet has been fully upgraded.//<br><</if>>
-			</div>
+		<br>[[Re-unlock upgrading.|Firebase][$SF.Upgrade = 0,cashX(-(_cost), "specialForces")]] @@.red;<<print cashFormat(_cost)>>@@
+<</if>>
 
-			<div style="margin-left:2em"><<if ($SF.Squad.TV < 5||_T1 && $SF.Squad.TV < _TVU)>>
-				<<set _cTV = App.SF.UpgradeCost(60000,$SF.Squad.TV)>>
-				<<if $cash >= _cTV>>
-					[[Upgrade Transport Vehicle Fleet|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.TV++, cashX(forceNeg(_cTV), "specialForces")]]
-				<<else>>//Cannot afford to upgrade Transport Vehicle Fleet.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cTV)>>@@// <span style="float:right;"> <<print progress($SF.Squad.TV)>> </span>
-			<<elseif $SF.Squad.TV === _TVU>> //The Transport Vehicle Fleet has been fully upgraded.//<br><</if>>
-			</div>
+<<if ($SF.Size < 30 || $SF.Size !== _max) && $SF.Upgrade < 1>>
+<br>Which facility or equipment do you wish to upgrade this week? <br>
 
-			<div style="margin-left:2em"><<if _T1 && $SF.Squad.PGT < _PGTU>>
-				<<set _cPGT = App.SF.UpgradeCost(735000,$SF.Squad.PGT)>>
-				<<if $cash >= _cPGT>>
-					[[Upgrade Prototype Goliath tank|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.PGT++, cashX(forceNeg(_cPGT), "specialForces")]]
-				<<else>>//Cannot afford to upgrade Prototype Goliath Tank.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cPGT)>>@@// <span style="float:right;"> <<print progress($SF.Squad.PGT)>> </span>
-			<<elseif $SF.Squad.PGT === _PGTU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.PGT)>> </span>
-			<<elseif $SF.Squad.PGT === _PGTU>> //The Prototype Goliath Tank has been fully upgraded.//<br><</if>></div><</if>>
-
-		<<if $SF.Squad.Firebase >= 4>>''Hangar''<br>
-			<div style="margin-left:2em"><<if $SF.Squad.AA < 5||_T1 && $SF.Squad.AA < _AAU>>
-				<<set _cAA = App.SF.UpgradeCost(70000,$SF.Squad.AA)>>
-				<<if $cash >= _cAA>>
-					[[Upgrade Attack Aircraft Fleet|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.AA++, cashX(forceNeg(_cAA), "specialForces")]]
-				<<else>>//Cannot afford to upgrade Attack Aircraft Fleet.//<</if>>
-			//Costs @@.red;<<print cashFormat(_cAA)>>@@// <span style="float:right;"> <<print progress($SF.Squad.AA)>> </span>
-			<<elseif $SF.Squad.AA === _AAU>> //The Attack Aircraft Fleet has been fully upgraded.//<br><</if>>
-			</div>
+	<<if $SF.Squad.Firebase < 5||_T1 && $SF.Squad.Firebase < _FU>>
+		<<set _cF = App.SF.UpgradeCost(100000,$SF.Squad.Firebase)>>
+		<<if $cash >= _cF>> <br>
+			[[Upgrade Firebase|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Firebase++, cashX(-(_cF), "specialForces")]]
+		<<else>>
+			//Cannot afford to upgrade the Firebase.//
+		<</if>>
+		//Costs @@.red;<<print cashFormat(_cF)>>@@// <span style="float:right;"> <<print progress($SF.Squad.Firebase)>> </span> <br>
+	<<elseif $SF.Squad.Firebase === _FU>>
+		//The Firebase has been fully upgraded.// <br>
+	<</if>>
 
-			<div style="margin-left:2em"><<if $SF.Squad.TA < 5||_T1 && $SF.Squad.TA < _TAU>>
-				<<set _cTA = App.SF.UpgradeCost(70000,$SF.Squad.TA)>>
-				<<if $cash >= _cTA>>
-					[[Upgrade Transport Aircraft Fleet|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.TA++, cashX(forceNeg(_cTA), "specialForces")]]
-				<<else>>//Cannot afford to upgrade the Transport Aircraft Fleet.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cTA)>>@@// <span style="float:right;"> <<print progress($SF.Squad.TA)>> </span>
-			<<elseif $SF.Squad.TA === _TAU>> //The Transport Aircraft Fleet has been fully upgraded.//<br><</if>>
-			</div>
+	<<if $SF.Squad.Armoury < 5||_T1 && $SF.Squad.Armoury < _AU>>
+		<<set _cA = App.SF.UpgradeCost(40000,$SF.Squad.Armoury)>>
+		<<if $cash >= _cA>>
+			[[Upgrade Armory|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Armoury++, cashX(-(_cA), "specialForces")]]
+		<<else>>
+			//Cannot afford to upgrade the Armory.//
+		<</if>>
+		//Costs @@.red;<<print cashFormat(_cA)>>@@// <span style="float:right;"> <<print progress($SF.Squad.Armoury)>> </span> <br>
+	<<elseif $SF.Squad.Armoury === _AU>>
+		//The Armory has been fully upgraded.// <br>
+	<</if>>
+
+	<<if $SF.Squad.Drugs < 5||_T1 && $SF.Squad.Drugs < _DrugsU>>
+		<<set _cDrugs = App.SF.UpgradeCost(40000,$SF.Squad.Drugs)>>
+		<<if $cash >= _cDrugs>>
+			[[Upgrade Drug Lab|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Drugs++, cashX(-(_cDrugs), "specialForces")]]
+		<<else>>
+				//Cannot afford to upgrade the Drug Lab.//
+		<</if>>
+		//Costs @@.red;<<print cashFormat(_cDrugs)>>@@// <span style="float:right;"> <<print progress($SF.Squad.Drugs)>> </span> <br>
+	<<elseif $SF.Squad.Drugs === _DrugsU>>
+		//The Drug Lab has been fully upgraded.// <br>
+	<</if>>
+
+	<<if $SF.Squad.Firebase >= 2 && ($SF.Squad.Drones < 5 ||_T1 && $SF.Squad.Drones < _DU)>>
+		<<set _cDrones = App.SF.UpgradeCost(45000,$SF.Squad.Drones)>>
+		<<if $cash >= _cDrones>>
+			[[Upgrade Drone Bay|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Drones++, cashX(-(_cDrones), "specialForces")]]
+		<<else>>
+			//Cannot afford to upgrade the Drone Bay.//
+		<</if>>
+		//Costs @@.red;<<print cashFormat(_cDrones)>>@@// <span style="float:right;"> <<print progress($SF.Squad.Drones)>> </span> <br>
+	<<elseif $SF.Squad.Drones === _DU>>
+		//The Drone Bay has been fully upgraded.// <br>
+	<</if>>
+
+	<<if $SF.Squad.Firebase >= 1 && $terrain !== "oceanic">> <br>''Garage''<br>
+		<div style="margin-left:2em">
+		<<if ($SF.Squad.AV < 5||_T1 && $SF.Squad.AV < _AVU)>>
+			<<set _cAV = App.SF.UpgradeCost(60000,$SF.Squad.AV)>>
+			<<if $cash >= _cAV>>
+				[[Upgrade Attack Vehicle Fleet|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.AV++, cashX(-(_cAV), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade the Attack Vehicle Fleet.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cAV)>>@@// <span style="float:right;"> <<print progress($SF.Squad.AV)>> </span> <br>
+		<<elseif $SF.Squad.AV === _AVU>>
+			//The Attack Vehicle Fleet has been fully upgraded.// <br>
+		<</if>>
+		</div>
+
+		<div style="margin-left:2em">
+		<<if ($SF.Squad.TV < 5||_T1 && $SF.Squad.TV < _TVU)>>
+			<<set _cTV = App.SF.UpgradeCost(60000,$SF.Squad.TV)>>
+			<<if $cash >= _cTV>>
+				[[Upgrade Transport Vehicle Fleet|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.TV++, cashX(-(_cTV), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade Transport Vehicle Fleet.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cTV)>>@@// <span style="float:right;"> <<print progress($SF.Squad.TV)>> </span> <br>
+		<<elseif $SF.Squad.TV === _TVU>>
+			//The Transport Vehicle Fleet has been fully upgraded.// <br>
+		<</if>>
+		</div>
+
+		<div style="margin-left:2em">
+		<<if _T1 && $SF.Squad.PGT < _PGTU>>
+			<<set _cPGT = App.SF.UpgradeCost(735000,$SF.Squad.PGT)>>
+			<<if $cash >= _cPGT>>
+				[[Upgrade Prototype Goliath tank|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.PGT++, cashX(-(_cPGT), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade Prototype Goliath Tank.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cPGT)>>@@// <span style="float:right;"> <<print progress($SF.Squad.PGT)>> </span> <br>
+		<<elseif $SF.Squad.PGT === _PGTU && $PC.warfare < 75>>
+			//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.PGT)>> </span> <br>
+		<<elseif $SF.Squad.PGT === _PGTU>>
+			//The Prototype Goliath Tank has been fully upgraded.// <br>
+		<</if>>
+		</div>
+	<</if>> /*Closes garage.*/
+
+	<<if $SF.Squad.Firebase >= 4>>''Hangar''<br>
+		<div style="margin-left:2em">
+		<<if $SF.Squad.AA < 5||_T1 && $SF.Squad.AA < _AAU>>
+			<<set _cAA = App.SF.UpgradeCost(70000,$SF.Squad.AA)>>
+			<<if $cash >= _cAA>>
+				[[Upgrade Attack Aircraft Fleet|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.AA++, cashX(-(_cAA), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade Attack Aircraft Fleet.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cAA)>>@@// <span style="float:right;"> <<print progress($SF.Squad.AA)>> </span> <br>
+		<<elseif $SF.Squad.AA === _AAU>>
+			//The Attack Aircraft Fleet has been fully upgraded.// <br>
+		<</if>>
+		</div>
+
+		<div style="margin-left:2em">
+		<<if $SF.Squad.TA < 5||_T1 && $SF.Squad.TA < _TAU>>
+			<<set _cTA = App.SF.UpgradeCost(70000,$SF.Squad.TA)>>
+			<<if $cash >= _cTA>>
+				[[Upgrade Transport Aircraft Fleet|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.TA++, cashX(-(_cTA), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade the Transport Aircraft Fleet.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cTA)>>@@// <span style="float:right;"> <<print progress($SF.Squad.TA)>> </span> <br>
+		<<elseif $SF.Squad.TA === _TAU>>
+			//The Transport Aircraft Fleet has been fully upgraded.// <br>
+		<</if>>
+		</div>
 
-			<div style="margin-left:2em"><<if _T1 && $SF.Squad.SpacePlane < _SPU>>
-				<<set _cSP = App.SF.UpgradeCost(250000,$SF.Squad.SpacePlane)>>
-				<<if $cash >= _cSP>>
-					[[Upgrade Spaceplane|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.SpacePlane++, cashX(forceNeg(_cSP), "specialForces")]]
-				<<else>>//Cannot afford to upgrade the Spaceplane.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cSP)>>@@//<span style="float:right;"><<print progress($SF.Squad.SpacePlane)>> </span>
-			<<elseif $SF.Squad.SpacePlane === _SPU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.SpacePlane)>> </span>
-			<<elseif $SF.Squad.SpacePlane === _SPU>> //The Spaceplane has been fully upgraded.//<br> <</if>></div>
-
-			<div style="margin-left:2em"><<if _T1 && $SF.Squad.GunS < _GunSU>>
-				<<set _cGunS = App.SF.UpgradeCost(350000,$SF.Squad.GunS)>>
-				<<if $cash >= _cGunS>>
-					[[Upgrade Gunship|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.GunS++, cashX(forceNeg(_cGunS), "specialForces")]]
-				<<else>>//Cannot afford to upgrade Gunship.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cGunS)>>@@//<span style="float:right;"> <<print progress($SF.Squad.GunS)>> </span>
-			<<elseif $SF.Squad.GunS === _GunSU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.GunS)>> </span>
-			<<elseif $SF.Squad.GunS === _GunSU>> //The Gunship has been fully upgraded.//<br> <</if>></div><</if>>
-
-		<<if _T1>>''Launch Bay''
-			<div style="margin-left:2em"><<if $SF.Squad.Satellite.lv < _SatU && $SF.Squad.Satellite.InOrbit < 1>>
-				<<set _cSat = App.SF.UpgradeCost(525000,$SF.Squad.Satellite.lv)>>
-				<<if $cash >= _cSat>>
-					[[Upgrade Satellite|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Satellite.lv++, cashX(forceNeg(_cSat), "specialForces")]]
-				<<else>>//Cannot afford to upgrade Satellite.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cSat)>>@@//<span style="float:right;"><<print progress($SF.Squad.Satellite.lv)>> </span>
-			<<elseif $SF.Squad.Satellite.lv === _SatU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.Satellite.lv)>> </span>
-			<<else>>//The Satellite has been fully upgraded.//<br><</if>></div>
-
-			<<if $terrain !== "oceanic">>
-			<div style="margin-left:2em"><<if $SF.Squad.GiantRobot < _GRU>>
+		<div style="margin-left:2em">
+		<<if _T1 && $SF.Squad.SpacePlane < _SPU>>
+			<<set _cSP = App.SF.UpgradeCost(250000,$SF.Squad.SpacePlane)>>
+			<<if $cash >= _cSP>>
+				[[Upgrade Spaceplane|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.SpacePlane++, cashX(-(_cSP), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade the Spaceplane.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cSP)>>@@//<span style="float:right;"> <<print progress($SF.Squad.SpacePlane)>> </span> <br>
+		<<elseif $SF.Squad.SpacePlane === _SPU && $PC.warfare < 75>>
+			//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.SpacePlane)>> </span> <br>
+		<<elseif $SF.Squad.SpacePlane === _SPU>>
+			//The Spaceplane has been fully upgraded.// <br>
+		<</if>>
+		</div>
+
+		<div style="margin-left:2em">
+		<<if _T1 && $SF.Squad.GunS < _GunSU>>
+			<<set _cGunS = App.SF.UpgradeCost(350000,$SF.Squad.GunS)>>
+			<<if $cash >= _cGunS>>
+				[[Upgrade Gunship|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.GunS++, cashX(-(_cGunS), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade Gunship.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cGunS)>>@@//<span style="float:right;"> <<print progress($SF.Squad.GunS)>> </span> <br>
+		<<elseif $SF.Squad.GunS === _GunSU && $PC.warfare < 75>>
+			//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.GunS)>> </span> <br>
+		<<elseif $SF.Squad.GunS === _GunSU>>
+			//The Gunship has been fully upgraded.// <br>
+		<</if>>
+		</div>
+	<</if>> /*Closes hangar.*/
+
+	<<if _T1>>''Launch Bay''
+		<div style="margin-left:2em">
+		<<if $SF.Squad.Satellite.lv < _SatU && $SF.Squad.Satellite.InOrbit < 1>>
+			<<set _cSat = App.SF.UpgradeCost(525000,$SF.Squad.Satellite.lv)>>
+			<<if $cash >= _cSat>>
+				[[Upgrade Satellite|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Satellite.lv++, cashX(-(_cSat), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade Satellite.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cSat)>>@@//<span style="float:right;"> <<print progress($SF.Squad.Satellite.lv)>> </span> <br>
+		<<elseif $SF.Squad.Satellite.lv === _SatU && $PC.warfare < 75>>
+			//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.Satellite.lv)>> </span> <br>
+		<<else>>
+			//The Satellite has been fully upgraded.// <br>
+		<</if>>
+		</div>
+
+		<<if $terrain !== "oceanic">>
+			<div style="margin-left:2em">
+			<<if $SF.Squad.GiantRobot < _GRU>>
 				<<set _cGR = App.SF.UpgradeCost(550000,$SF.Squad.GiantRobot)>>
 				<<if $cash >= _cGR>>
-					[[Upgrade Giant Robot|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.GiantRobot++, cashX(forceNeg(_cGR), "specialForces")]]
-				<<else>>//Cannot afford to upgrade the Giant Robot.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cGR)>>@@//<span style="float:right;"><<print progress($SF.Squad.GiantRobot)>></span>
-			<<elseif $SF.Squad.GiantRobot === _GRU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.GiantRobot)>> </span>
-			<<else>>//The Giant Robot has been fully upgraded.//<br><</if>></div><</if>>
+					[[Upgrade Giant Robot|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.GiantRobot++, cashX(-(_cGR), "specialForces")]]
+				<<else>>
+					//Cannot afford to upgrade the Giant Robot.//
+				<</if>>
+				//Costs @@.red;<<print cashFormat(_cGR)>>@@//<span style="float:right;"> <<print progress($SF.Squad.GiantRobot)>> </span> <br>
+			<<elseif $SF.Squad.GiantRobot === _GRU && $PC.warfare < 75>>
+				//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.GiantRobot)>> </span> <br>
+			<<else>>
+				//The Giant Robot has been fully upgraded.// <br>
+			<</if>>
+			</div>
 
-			<div style="margin-left:2em"><<if $SF.Squad.MissileSilo < _MSU>>
+			<div style="margin-left:2em">
+			<<if $SF.Squad.MissileSilo < _MSU>>
 				<<set _cMS = App.SF.UpgradeCost(565000,$SF.Squad.MissileSilo)>>
 				<<if $cash >= _cMS>>
-					[[Upgrade Cruise Missile|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.MissileSilo++, cashX(forceNeg(_cMS), "specialForces")]]
-				<<else>>//Cannot afford to upgrade Cruise Missile.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cMS)>>@@//<span style="float:right;"><<print progress($SF.Squad.MissileSilo)>></span>
-			<<elseif $SF.Squad.MissileSilo === _MSU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.MissileSilo)>> </span>
-			<<else>>//The Cruise Missile has been fully upgraded.//<br><</if>></div><</if>>
-
-		<<if _T1 && ($terrain == "oceanic" || $terrain == "marine")>>''Naval Yard''<br>
-			<div style="margin-left:2em"><<if $SF.Squad.AircraftCarrier < _ACU>>
-				<<set _cAC = App.SF.UpgradeCost(650000,$SF.Squad.AircraftCarrier)>>
-				<<if $cash >= _cAC>>
-					[[Upgrade Aircraft Carrier|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.AircraftCarrier++, cashX(forceNeg(_cAC), "specialForces")]]
-				<<else>>//Cannot afford to upgrade Aircraft Carrier.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cAC)>>@@//<span style="float:right;"> <<print progress($SF.Squad.AircraftCarrier)>> </span>
-			<<elseif $SF.Squad.AircraftCarrier === _ACU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.AircraftCarrier)>> </span>
-			<<else>>//The Aircraft Carrier has been fully upgraded.//<br><</if>></div>
-
-			<div style="margin-left:2em"><<if $SF.Squad.Sub < _SubU>>
-				<<set _cSub = App.SF.UpgradeCost(700000,$SF.Squad.Sub)>>
-				<<if $cash >= _cSub>>
-					[[Upgrade Submarine|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Sub++, cashX(forceNeg(_cSub), "specialForces")]]
-				<<else>>//Cannot afford to upgrade Submarine//<</if>>
-				//Costs @@.red;<<print cashFormat(_cSub)>>@@//<span style="float:right;"> <<print progress($SF.Squad.Sub)>> </span>
-			<<elseif $SF.Squad.Sub === _SubU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.Sub)>> </span>
-			<<else>>//The Submarine has been fully upgraded.//<br><</if>></div>
-
-			<div style="margin-left:2em"><<if $SF.Squad.HAT < _HATU>>
-				<<set _cHAT = App.SF.UpgradeCost(665000,$SF.Squad.HAT)>>
-				<<if $cash >= _cHAT>>
-					[[Upgrade Amphibious Transport|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.HAT++, cashX(forceNeg(_cHAT), "specialForces")]]
-				<<else>>//Cannot afford to upgrade Amphibious Transport.//<</if>>
-				//Costs @@.red;<<print cashFormat(_cHAT)>>@@//<span style="float:right;"> <<print progress($SF.Squad.HAT)>> </span>
-			<<elseif $SF.Squad.HAT === _HATU && $PC.warfare < 75>>//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.HAT)>> </span>
-			<<else>>//The Amphibious Transport has been fully upgraded.//<br><</if>></div>
+					[[Upgrade Cruise Missile|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.MissileSilo++, cashX(-(_cMS), "specialForces")]]
+				<<else>>
+					//Cannot afford to upgrade Cruise Missile.//
+				<</if>>
+				//Costs @@.red;<<print cashFormat(_cMS)>>@@//<span style="float:right;"> <<print progress($SF.Squad.MissileSilo)>> </span> <br>
+			<<elseif $SF.Squad.MissileSilo === _MSU && $PC.warfare < 75>>
+				//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.MissileSilo)>> </span> <br>
+			<<else>>
+				//The Cruise Missile has been fully upgraded.// <br>
+			<</if>>
+			</div>
+	<</if>> /*Closes Launch Bay.*/
+
+	<<if _T1 && ($terrain == "oceanic" || $terrain == "marine")>>''Naval Yard''<br>
+		<div style="margin-left:2em">
+		<<if $SF.Squad.AircraftCarrier < _ACU>>
+			<<set _cAC = App.SF.UpgradeCost(650000,$SF.Squad.AircraftCarrier)>>
+			<<if $cash >= _cAC>>
+				[[Upgrade Aircraft Carrier|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.AircraftCarrier++, cashX(-(_cAC), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade Aircraft Carrier.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cAC)>>@@//<span style="float:right;"> <<print progress($SF.Squad.AircraftCarrier)>> </span> <br>
+		<<elseif $SF.Squad.AircraftCarrier === _ACU && $PC.warfare < 75>>
+			//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.AircraftCarrier)>> </span> <br>
+		<<else>>
+			//The Aircraft Carrier has been fully upgraded.// <br>
 		<</if>>
-	<</if>>
+		</div>
+
+		<div style="margin-left:2em">
+		<<if $SF.Squad.Sub < _SubU>>
+			<<set _cSub = App.SF.UpgradeCost(700000,$SF.Squad.Sub)>>
+			<<if $cash >= _cSub>>
+				[[Upgrade Submarine|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.Sub++, cashX(-(_cSub), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade Submarine//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cSub)>>@@//<span style="float:right;"> <<print progress($SF.Squad.Sub)>> </span>
+		<<elseif $SF.Squad.Sub === _SubU && $PC.warfare < 75>>
+			//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.Sub)>> </span>
+		<<else>>
+			//The Submarine has been fully upgraded.// <br>
+		<</if>>
+		</div>
+
+		<div style="margin-left:2em">
+		<<if $SF.Squad.HAT < _HATU>>
+			<<set _cHAT = App.SF.UpgradeCost(665000,$SF.Squad.HAT)>>
+			<<if $cash >= _cHAT>>
+				[[Upgrade Amphibious Transport|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Squad.HAT++, cashX(-(_cHAT), "specialForces")]]
+			<<else>>
+				//Cannot afford to upgrade Amphibious Transport.//
+			<</if>>
+			//Costs @@.red;<<print cashFormat(_cHAT)>>@@//<span style="float:right;"> <<print progress($SF.Squad.HAT)>> </span>
+		<<elseif $SF.Squad.HAT === _HATU && $PC.warfare < 75>>
+			//Your warfare skill is not high enough unlock the next upgrade.//<span style="float:right;"> <<print progress($SF.Squad.HAT)>> </span> <br>
+		<<else>>
+			//The Amphibious Transport has been fully upgraded.// <br>
+		<</if>>
+		</div>
+	<</if>> /*Closes Naval Yard.*/
 
-	/* <div style="margin-left:2em"><<if _T1 && $SF.Facility.Toggle > 0 && $SF.Facility.Active < 1>>
-	<<set _cSFF = App.SF.UpgradeCost(735000,$SF.Facility.Active)>>
-		<<if $cash >= _cSFF>>
-			[[Build $SF.Lower's support facility|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Facility.Active++, cashX(forceNeg(_cSFF), "specialForces")]]
-		<<else>>//Cannot afford to build $SF.Lower's support facility.//<</if>>
-	//Costs @@.red;<<print cashFormat(_cSFF)>>@@//
-	<</if>>*/
+<</if>>
+<</if>>
+/* <div style="margin-left:2em"><<if _T1 && $SF.Facility.Toggle > 0 && $SF.Facility.Active < 1>>
+<<set _cSFF = App.SF.UpgradeCost(735000,$SF.Facility.Active)>>
+	<<if $cash >= _cSFF>>
+		[[Build $SF.Lower's support facility|Firebase][$SF.Upgrade = 1, $SF.Colonel.Talk += 1, $SF.Facility.Active++, cashX(-(_cSFF), "specialForces")]]
+	<<else>> //Cannot afford to build $SF.Lower's support facility.// <</if>>
+//Costs @@.red;<<print cashFormat(_cSFF)>>@@//
+<</if>>*/
\ No newline at end of file
diff --git a/src/endWeek/saChoosesOwnClothes.js b/src/endWeek/saChoosesOwnClothes.js
index 88df29d470329d5c24e93898f40618845f69998a..1b3792e2cc2f9e692a6f89d20e4e52c771f78eb4 100644
--- a/src/endWeek/saChoosesOwnClothes.js
+++ b/src/endWeek/saChoosesOwnClothes.js
@@ -98,7 +98,7 @@ window.saChoosesOwnClothes = (function() {
 
 	/**
 	 * @param {App.Entity.SlaveState} slave
-	 * @returns {string} // I think
+	 * @returns {{text:string, clothes:string}}
 	 */
 	function todaysOutfit(slave) {
 		const clothing = [];
@@ -956,7 +956,7 @@ window.saChoosesOwnClothes = (function() {
 
 	/**
 	 * @param {App.Entity.SlaveState} slave
-	 * @returns {string}
+	 * @returns {{text:string, shoes:string}}
 	 */
 	function todaysShoes(slave) {
 		const shoes = [];
@@ -1002,7 +1002,7 @@ window.saChoosesOwnClothes = (function() {
 
 	/**
 	 * @param {App.Entity.SlaveState} slave
-	 * @returns {string}
+	 * @returns {{text:string, collar:string}}
 	 */
 	function todaysCollar(slave) {
 		const neck = [];
@@ -1034,7 +1034,7 @@ window.saChoosesOwnClothes = (function() {
 
 	/**
 	 * @param {App.Entity.SlaveState} slave
-	 * @returns {string}
+	 * @returns {{text:string, bellyAccessory:string}}
 	 */
 	function todaysCorset(slave) {
 		const belly = [];
diff --git a/src/endWeek/saServeThePublic.js b/src/endWeek/saServeThePublic.js
index b5a65e173c7d82b0e64cf5c696be4dbe6d1ed136..cef5ebbe08e216d33a5c61369ad8a8ca8a065558 100644
--- a/src/endWeek/saServeThePublic.js
+++ b/src/endWeek/saServeThePublic.js
@@ -71,6 +71,7 @@ window.saServeThePublic = (function saServeThePublic() {
 		const facility = slave.assignment === Job.CLUB ? V.facility.club : undefined;
 		T.incomeStats = getSlaveStatisticData(slave, facility);
 		T.incomeStats.customers = slave.sexAmount;
+		V.publicServants++;
 	}
 
 	/**
diff --git a/src/js/generateMarketSlave.js b/src/js/generateMarketSlave.js
index da5f08d584d2cfde9df7d26763b0ee874adea365..a311d8a78f0b227a5b7c57c35ee3a3c71d3af84a 100644
--- a/src/js/generateMarketSlave.js
+++ b/src/js/generateMarketSlave.js
@@ -21,7 +21,7 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) {
 			}
 			V.one_time_age_overrides_pedo_mode = 1;
 			if (V.corpSpecRaces.length > 0) {
-				V.fixedRace = jsEither([V.corpSpecRaces]);
+				V.fixedRace = jsEither(V.corpSpecRaces);
 			}
 			if (V.corpSpecGender === 1) {
 				r += `Slaves without pussies are not trained. `;
@@ -73,7 +73,7 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) {
 			if (V.corpSpecRaces.length === 12) {
 				r += `There is no racial element to trainee selection. `;
 			} else if (V.corpSpecRaces.length === 1) {
-				const corpSpecRace = jsEither([V.corpSpecRaces]);
+				const corpSpecRace = jsEither(V.corpSpecRaces);
 				r += `The corporation specializes in ${corpSpecRace} slaves. `;
 			} else {
 				r += `The corporation selects slaves based on race. `/*getting into the specifics of which races exactly is a hellhole I'd rather not jump into*/ ;
@@ -1055,7 +1055,7 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) {
 				V.fixedRace = V.arcologies[0].FSSupremacistRace;
 			} else if (V.arcologies[0].FSSubjugationistLawME === 1) {
 				const races = setup.filterRacesLowercase.filter(race => race !== V.arcologies[0].FSSubjugationistRace);
-				V.fixedRace = jsEither([races]);
+				V.fixedRace = jsEither(races);
 			}
 			V.activeSlave = GenerateNewSlave();
 			V.activeSlave.origin = "You purchased her indenture contract, making her yours for as long as it lasts.";
diff --git a/src/js/slaveSummaryWidgets.js b/src/js/slaveSummaryWidgets.js
index 03304ba6fac5556fab37566c718b378774ce294f..295ccb94dc41758a5310a1791742c12a74c3e0f1 100644
--- a/src/js/slaveSummaryWidgets.js
+++ b/src/js/slaveSummaryWidgets.js
@@ -5381,7 +5381,7 @@ App.UI.slaveSummaryList = function(passageName) {
 			case "Main":
 				if ((_Slave.choosesOwnClothes === 1) && (_Slave.clothes === "choosing her own clothes")) {
 					const _oldDevotion = _Slave.devotion;
-					// const _chosenClothes = saChoosesOwnClothes(_Slave);
+					saChoosesOwnClothes(_Slave);
 					slaves[_ssi].devotion = _oldDevotion;
 					_Slave = slaves[_ssi]; /* restore devotion value so repeatedly changing clothes isn't an exploit */
 				}
diff --git a/src/pregmod/incubator.tw b/src/pregmod/incubator.tw
index 6bc095da5dc9dcf54f75f5647c50f84a65c3518f..a81ea6ab44c99e3cedec3859a05c3a78b4ec8607 100644
--- a/src/pregmod/incubator.tw
+++ b/src/pregmod/incubator.tw
@@ -81,7 +81,7 @@ Reserve an eligible mother-to-be's child to be placed in a tank upon birth. Of $
 		<<set _pregWeek = $slaves[_u].pregWeek>>
 		<<set _slaveName = SlaveFullName($slaves[_u])>>
 		<div class="possible" @id="_slaveId" @data-preg-count="_pregCount" @data-reserved-spots="_reservedIncubator" @data-preg-week="_pregWeek" @data-name="_slaveName">
-		<<print "[[_slaveName|Long Slave Description][$activeSlave = $slaves[" + _u + "], $nextLink = passage()]]">> is $slaves[_u].pregWeek weeks pregnant with
+		<<print "[[_slaveName|Long Slave Description][$activeSlave = $slaves[" + _u + "], $nextLink = passage()]]">> is $slaves[_u].pregWeek week<<if $slaves[_u].pregWeek > 1>>s<</if>> pregnant with
 		<<if $slaves[_u].pregSource == 0 || $slaves[_u].preg <= 5>>someone's<<if $slaves[_u].preg <= 5>>, though it is too early to tell whose,<</if>>
 		<<elseif $slaves[_u].pregSource == -1>>your
 		<<elseif $slaves[_u].pregSource == -2>>a citizen's
@@ -410,7 +410,8 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 			<<set _readySlaves = 1>>
 			<br>$He is ready to be released from $his tank.
 		<<else>>
-			<br>$His growth is currently being accelerated. $He will be ready for release in about <<print Math.round($tanks[$i].growTime/$incubatorUpgradeSpeed)>> weeks.
+			<<set _weekDisplay = Math.round($tanks[$i].growTime/$incubatorUpgradeSpeed)>>
+			<br>$His growth is currently being accelerated. $He will be ready for release in about _weekDisplay week<<if _weekDisplay > 1>>s<</if>>.
 		<</if>>
 		<br>The tank is imprinting $him with basic life and sexual skills, though $he will still be very naïve and inexperienced on release.
 		<<if $tanks[$i].tankBaby == 2>>
diff --git a/src/pregmod/physicalDevelopment.tw b/src/pregmod/physicalDevelopment.tw
index 2f4771bdbaae6c53de60abde0083dbcc389782e8..207cd8993f7f0ec122b448d877883cd074375ea3 100644
--- a/src/pregmod/physicalDevelopment.tw
+++ b/src/pregmod/physicalDevelopment.tw
@@ -54,10 +54,24 @@
 			<<set $args[0].height += 5>>
 		<</if>>
 	<<else>>
-		<<if $args[0].height <= 91>>
-			<<set $args[0].height += either(8,8,9,9,9,10)>>
-		<<elseif $args[0].height <= 101>>
-			<<set $args[0].height += 5>>
+		<<if $args[0].geneticQuirks.dwarfism == 2 && $args[0].geneticQuirks.gigantism != 2>>
+			<<if $args[0].height <= 77>>
+				<<set $args[0].height += either(2,2,3,3,4,4)>>
+			<<elseif $args[0].height <= 82>>
+				<<set $args[0].height += 1>>
+			<</if>>
+		<<elseif $args[0].geneticQuirks.gigantism == 2>>
+			<<if $args[0].height <= 101>>
+				<<set $args[0].height += either(8,8,9,9,9,10)>>
+			<<elseif $args[0].height <= 116>>
+				<<set $args[0].height += 7>>
+			<</if>>
+		<<else>>
+			<<if $args[0].height <= 91>>
+				<<set $args[0].height += either(8,8,9,9,9,10)>>
+			<<elseif $args[0].height <= 101>>
+				<<set $args[0].height += 5>>
+			<</if>>
 		<</if>>
 	<</if>>
 	<<set $args[0].pregAdaptation = 5>>
@@ -2785,8 +2799,18 @@
 	<</if>>
 <<case 18>>
 	<<if $args[0].hormoneBalance >= 200>>
-		<<if $args[0].height <= 174>>
-			<<set $args[0].height += either(0,0,1,1)>>
+		<<if $args[0].geneticQuirks.dwarfism == 2 && $args[0].geneticQuirks.gigantism != 2>>
+			<<if $args[0].height <= 146>>
+				<<set $args[0].height += either(0,0,0,1)>>
+			<</if>>
+		<<elseif $args[0].geneticQuirks.gigantism == 2>>
+			<<if $args[0].height <= 274>>
+				<<set $args[0].height += either(0,1,2,3)>>
+			<</if>>
+		<<else>>
+			<<if $args[0].height <= 174>>
+				<<set $args[0].height += either(0,0,1,1)>>
+			<</if>>
 		<</if>>
 		<<if $args[0].hips < 2>>
 			<<if random(1,100) > 20>>
@@ -2881,8 +2905,18 @@
 			<</if>>
 		<</if>>
 	<<else>>
-		<<if $args[0].height <= 174>>
-			<<set $args[0].height += either(0,0,1,1,1,2)>>
+		<<if $args[0].geneticQuirks.dwarfism == 2 && $args[0].geneticQuirks.gigantism != 2>>
+			<<if $args[0].height <= 146>>
+				<<set $args[0].height += either(0,0,0,1)>>
+			<</if>>
+		<<elseif $args[0].geneticQuirks.gigantism == 2>>
+			<<if $args[0].height <= 274>>
+				<<set $args[0].height += either(3,4,4,5,5,6)>>
+			<</if>>
+		<<else>>
+			<<if $args[0].height <= 174>>
+				<<set $args[0].height += either(0,0,1,1,1,2)>>
+			<</if>>
 		<</if>>
 		<<if $args[0].waist < 20>>
 			<<if random(1,100) > 60>>
diff --git a/src/pregmod/saInflation.tw b/src/pregmod/saInflation.tw
index 1b2f8e11e83462a1f516b8851f8c7f943cce2cea..5458ec1d1eb45767ddb6901da4f0248ecfcdba59 100644
--- a/src/pregmod/saInflation.tw
+++ b/src/pregmod/saInflation.tw
@@ -535,7 +535,7 @@
 		$His body @@.lime;grows a little more padded@@ as it absorbs the milk contained in $his digestive track.
 		<<set $slaves[$i].weight += 2>>
 	<</if>>
-	<<if random(1,100) > 50/_gigantomastiaMod && if $slaves[$i].boobs < 3000*_gigantomastiaMod>>
+	<<if random(1,100) > 50/_gigantomastiaMod && $slaves[$i].boobs < 3000*_gigantomastiaMod>>
 		$His breasts @@.lime;swell@@ with added fat as $he digests the milk contained in $his digestive track.
 		<<set $slaves[$i].boobs += 200>>
 	<</if>>
diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw
index 61d2b1084f7ce5355de6b581f063e9d32dbf9518..d8a5ee9159cd21ec47bfb55cd34ca347dbc28584 100644
--- a/src/uncategorized/remoteSurgery.tw
+++ b/src/uncategorized/remoteSurgery.tw
@@ -1425,6 +1425,14 @@ $He has
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			[[Albinism prevention treatment|Surgery Degradation][$activeSlave.geneticQuirks.albinism = 0,cashX(forceNeg($surgeryCost*4), "slaveSurgery", $activeSlave), $activeSlave.health -= 40, $activeSlave.chem += 100,$surgeryType = "gene treatment"]]
 		<</if>>
+		<<if $activeSlave.geneticQuirks.dwarfism == 2>>
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;
+			[[Dwarfism correction treatment|Surgery Degradation][$activeSlave.geneticQuirks.dwarfism = 0,cashX(forceNeg($surgeryCost*4), "slaveSurgery", $activeSlave), $activeSlave.health -= 40, $activeSlave.chem += 100,$surgeryType = "gene treatment"]]
+		<</if>>
+		<<if $activeSlave.geneticQuirks.gigantism == 2>>
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;
+			[[Gigantism correction treatment|Surgery Degradation][$activeSlave.geneticQuirks.gigantism = 0,cashX(forceNeg($surgeryCost*4), "slaveSurgery", $activeSlave), $activeSlave.health -= 40, $activeSlave.chem += 100,$surgeryType = "gene treatment"]]
+		<</if>>
 		<<if $activeSlave.geneticQuirks.pFace == 2>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			[[Prevent passing of perfect faces|Surgery Degradation][$activeSlave.geneticQuirks.pFace = 0,cashX(forceNeg($surgeryCost*4), "slaveSurgery", $activeSlave), $activeSlave.health -= 40, $activeSlave.chem += 100,$surgeryType = "gene treatment"]]
diff --git a/src/uncategorized/reputation.tw b/src/uncategorized/reputation.tw
index 439e36e5450e6abc8dff31193f1afdce93e6926d..790870b4dee1182c981740301e3d55f8109e25b8 100644
--- a/src/uncategorized/reputation.tw
+++ b/src/uncategorized/reputation.tw
@@ -478,14 +478,13 @@ On formal occasions, you are announced as $PCTitle.
 		<<= FSChange("EgyptianRevivalist", -2)>>
 	<</if>>
 <<elseif $arcologies[0].FSEdoRevivalist != "unset">>
-	<<set _threshold = Math.trunc($rep/5000)>>
+	<<set _threshold = Math.trunc($rep/2000)>>
 	<<if $publicServants <= _threshold>>
 		Society @@.red;disapproves@@ of your failure to provide for cultural development by offering public servants or club slaves in a number that befits your reputation.
 		<<= FSChange("EdoRevivalist", -2)>>
 	<<else>>
 		Society @@.green;approves@@ of your provision for cultural development by offering public servants and club slaves in a number that befits your reputation.
-		<<set _EdoPS = 2*_threshold>>
-		<<= FSChange("EdoRevivalist", _EdoPS)>>
+		<<= FSChange("EdoRevivalist", 2)>>
 	<</if>>
 	<<if $language != "Japanese">>
 		Continuing to use $language as the lingua franca of $arcologies[0].name rather than pure Japanese @@.red;disappoints@@ society and causes doubt about your revivalist project.
diff --git a/src/utility/descriptionWidgets.tw b/src/utility/descriptionWidgets.tw
index effd7f8868d5a02a0b82941ebc18100fbac6a6d0..3ee5db23bfe16de308a761f4f8bb85f782b94041 100644
--- a/src/utility/descriptionWidgets.tw
+++ b/src/utility/descriptionWidgets.tw
@@ -88,6 +88,13 @@
 	<<if $activeSlave.geneticQuirks.albinism == 2>>
 		$He is an albino.
 	<</if>>
+	<<if $activeSlave.geneticQuirks.dwarfism == 2 && $activeSlave.geneticQuirks.gigantism == 2>>
+		$He has both dwarfism and gigantism.
+	<<elseif $activeSlave.geneticQuirks.dwarfism == 2>>
+		$He has dwarfism.
+	<<elseif $activeSlave.geneticQuirks.gigantism == 2>>
+		$He has gigantism.
+	<</if>>
 	<<if $activeSlave.geneticQuirks.heterochromia == 2>>
 		$He carries a gene that allows $his eyes to be two different colors.
 	<</if>>
diff --git a/src/utility/descriptionWidgetsPiercings.tw b/src/utility/descriptionWidgetsPiercings.tw
index e06e7847bdce367e62083fa7cbcdf85497c9ca8f..477e8d9b59fdac1f5c4ece2ff925eb9f97671459 100644
--- a/src/utility/descriptionWidgetsPiercings.tw
+++ b/src/utility/descriptionWidgetsPiercings.tw
@@ -604,7 +604,7 @@ $He has a corset piercing, a ladder of steel rings running up each side of $his
 							<<if ($activeSlave.devotion > 20)>>
 								<<if ($activeSlave.energy > 90)>>
 									$His very special body allows $him to wear an incredibly lewd piece of jewelry: a thin golden chain that runs from nipple to nipple, through $his pierced cockhead. The chain is short, and any motion at all tugs at $his nipples and penis.
-									<<if canWalk($activeSlave)>>
+									<<if $activeSlave.amp != 1>>
 										The stimulation is almost unbearable, and the mere act of walking sometimes causes $him to cum.
 									<</if>>
 								<</if>>