From 032669d581f15713158a015f829374936bef7df7 Mon Sep 17 00:00:00 2001
From: lowercase-donkey <lowercasedonkey@gmail.com>
Date: Thu, 17 Jan 2019 19:56:34 -0500
Subject: [PATCH] Add gene support

---
 src/pregmod/organFarm.tw           |  8 ++---
 src/pregmod/organFarmOptions.tw    | 48 +++++++++++++++---------------
 src/uncategorized/masterSuite.tw   | 12 ++++----
 src/uncategorized/remoteSurgery.tw | 22 +++++++-------
 4 files changed, 45 insertions(+), 45 deletions(-)

diff --git a/src/pregmod/organFarm.tw b/src/pregmod/organFarm.tw
index c0c2fada1e0..293c7d6aff3 100644
--- a/src/pregmod/organFarm.tw
+++ b/src/pregmod/organFarm.tw
@@ -34,12 +34,12 @@ The Organ Farm
 	//The organ farm cannot be upgraded while it is use//
 	<br>
 <<elseif ($organFarmUpgrade == 2) && ($rep > 10000*_PCSkillCheck)>>
-	[[Upgrade the organ farm to the cutting edge model|Organ Farm][$cash -= 150000*_PCSkillCheck, $organFarmUpgrade = 3]]
+	[[Upgrade the organ farm to the cutting edge model|Organ Farm][cashX(forceNeg(150000*_PCSkillCheck), "capEx"), $organFarmUpgrade = 3]]
 	//Costs <<print cashFormat(150000*_PCSkillCheck)>>//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;//Will allow the organ farm to rapidly grow organs without risk to the implantee's health.//
 	<br>
 <<elseif ($organFarmUpgrade == 1) && ($rep > 10000*_PCSkillCheck)>>
-	[[Upgrade the organ farm with an experimental growth accelerator|Organ Farm][$cash -= 75000*_PCSkillCheck, $organFarmUpgrade = 2]]
+	[[Upgrade the organ farm with an experimental growth accelerator|Organ Farm][cashX(forceNeg(75000*_PCSkillCheck), "capEx"), $organFarmUpgrade = 2]]
 	//Costs <<print cashFormat(75000*_PCSkillCheck)>>//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;//Will allow the organ farm to quickly grow organs. Implanted organs may cause health issues.//
 	<br>
@@ -136,7 +136,7 @@ Organ Production
 	//You lack the reputation to access designs for cloning fertile ovaries for menopausal slaves.//
 	<br>
 <<elseif ($youngerOvaries != 1) && ($rep > 10000*_PCSkillCheck)>>
-	[[Purchase designs for cloning fertile ovaries for menopausal slaves|Organ Farm][$cash -= 30000*_PCSkillCheck, $youngerOvaries = 1]]
+	[[Purchase designs for cloning fertile ovaries for menopausal slaves|Organ Farm][cashX(forceNeg(30000*_PCSkillCheck), "capEx"), $youngerOvaries = 1]]
 	//Costs <<print cashFormat(30000*_PCSkillCheck)>>//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;//Will allow the growth of younger, fertile ovaries for menopausal slaves. Restored fertility will only last for a couple years at most.//
 	<br>
@@ -192,7 +192,7 @@ Future Societies Research
 <<if $arcologies[0].FSGenderRadicalistDecoration == 100>>
 	<<if ($arcologies[0].FSGenderRadicalistResearch == 0)>>
 		<<if ($rep >= 10000*_PCSkillCheck)>>
-			[[Fund research into developing male pregnancy methods|Organ Farm][$cash -= 50000*_PCSkillCheck,$arcologies[0].FSGenderRadicalistResearch = 1]] //Costs <<print cashFormat(50000*_PCSkillCheck)>>. Will allow cloning and production of anal uteri and ovaries.//
+			[[Fund research into developing male pregnancy methods|Organ Farm][cashX(forceNeg(50000*_PCSkillCheck), "capEx"),$arcologies[0].FSGenderRadicalistResearch = 1]] //Costs <<print cashFormat(50000*_PCSkillCheck)>>. Will allow cloning and production of anal uteri and ovaries.//
 			<br>
 		<<else>>
 			// You lack the reputation to access the research necessary to develop anal uteri and ovaries. //
diff --git a/src/pregmod/organFarmOptions.tw b/src/pregmod/organFarmOptions.tw
index 36297192aeb..cf92b569f0c 100644
--- a/src/pregmod/organFarmOptions.tw
+++ b/src/pregmod/organFarmOptions.tw
@@ -85,7 +85,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $slaveOrgans.penis != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Penis">>
-			<<set $cash -= 5000>>
+			<<run cashX(-5000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "penis", weeksToCompletion: "5", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -95,7 +95,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $slaveOrgans.testicles != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Testicles">>
-			<<set $cash -= 5000>>
+			<<run cashX(-5000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "testicles", weeksToCompletion: "10", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -106,7 +106,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $activeSlave.scrotum == 0>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Scrotum">>
-				<<set $cash -= 2500>>
+				<<run cashX(-2500, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "scrotum", weeksToCompletion: "5", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
@@ -118,7 +118,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $slaveOrgans.pigTesticles != 1>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Pig testicles">>
-				<<set $cash -= 5000>>
+				<<run cashX(-5000, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "pigTesticles", weeksToCompletion: "10", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
@@ -128,7 +128,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $slaveOrgans.dogTesticles != 1>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Dog testicles">>
-				<<set $cash -= 5000>>
+				<<run cashX(-5000, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "dogTesticles", weeksToCompletion: "10", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
@@ -138,7 +138,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $slaveOrgans.horseTesticles != 1>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Horse testicles">>
-				<<set $cash -= 5000>>
+				<<run cashX(-5000, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "horseTesticles", weeksToCompletion: "10", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
@@ -148,7 +148,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $slaveOrgans.cowTesticles != 1>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Cow testicles">>
-				<<set $cash -= 5000>>
+				<<run cashX(-5000, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "cowTesticles", weeksToCompletion: "10", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
@@ -160,7 +160,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $activeSlave.foreskin <= 0>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Foreskin">>
-				<<set $cash -= 2500>>
+				<<run cashX(-2500, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "foreskin", weeksToCompletion: "5", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
@@ -172,7 +172,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 <<if $slaveOrgans.prostate != 1>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Prostate">>
-		<<set $cash -= 5000>>
+		<<run cashX(-5000, "slaveSurgery", $activeSlave)>>
 		<<set _newOrgan = {type: "prostate", weeksToCompletion: "5", ID: 0}>>
 		<<set _newOrgan.ID = $activeSlave.ID>>
 		<<set $organs.push(_newOrgan)>>
@@ -182,7 +182,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 <<if $slaveOrgans.ovaries != 1>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Ovaries">>
-		<<set $cash -= 10000>>
+		<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 		<<set _newOrgan = {type: "ovaries", weeksToCompletion: "10", ID: 0}>>
 		<<set _newOrgan.ID = $activeSlave.ID>>
 		<<set $organs.push(_newOrgan)>>
@@ -193,7 +193,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $slaveOrgans.asexualReproOvaries != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Asexual reproduction modification">>
-			<<set $cash -= 10000>>
+			<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "asexualReproOvaries", weeksToCompletion: "10", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -205,7 +205,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $slaveOrgans.pigOvaries != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Pig ovaries">>
-			<<set $cash -= 10000>>
+			<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "pigOvaries", weeksToCompletion: "10", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -215,7 +215,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $slaveOrgans.dogOvaries != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Dog ovaries">>
-			<<set $cash -= 10000>>
+			<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "dogOvaries", weeksToCompletion: "10", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -225,7 +225,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $slaveOrgans.horseOvaries != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Horse ovaries">>
-			<<set $cash -= 10000>>
+			<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "horseOvaries", weeksToCompletion: "10", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -235,7 +235,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $slaveOrgans.cowOvaries != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Cow ovaries">>
-			<<set $cash -= 10000>>
+			<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "cowOvaries", weeksToCompletion: "10", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -247,7 +247,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $slaveOrgans.freshOvaries != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Younger Ovaries">>
-			<<set $cash -= 10000>>
+			<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "freshOvaries", weeksToCompletion: "10", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -259,7 +259,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $activeSlave.eyes <= -2 && $activeSlave.eyes != "implant">>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Eyes">>
-			<<set $cash -= 10000>>
+			<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "eyes", weeksToCompletion: "10", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -271,7 +271,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $activeSlave.hears <= -2 && $activeSlave.earImplant != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Cochleae">>
-			<<set $cash -= 10000>>
+			<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "cochleae", weeksToCompletion: "6", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -283,7 +283,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if ($activeSlave.voice == 0)>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Vocal cords">>
-			<<set $cash -= 5000>>
+			<<run cashX(-5000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "voicebox", weeksToCompletion: "5", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -295,7 +295,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 	<<if $slaveOrgans.mpreg != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<link "Anal womb and ovaries">>
-			<<set $cash -= 20000>>
+			<<run cashX(-20000, "slaveSurgery", $activeSlave)>>
 			<<set _newOrgan = {type: "mpreg", weeksToCompletion: "10", ID: 0}>>
 			<<set _newOrgan.ID = $activeSlave.ID>>
 			<<set $organs.push(_newOrgan)>>
@@ -307,7 +307,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $slaveOrgans.mpregPig != 1>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Anal pig womb and ovaries">>
-				<<set $cash -= 20000>>
+				<<run cashX(-20000, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "mpregPig", weeksToCompletion: "10", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
@@ -317,7 +317,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $slaveOrgans.mpregDog != 1>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Anal dog womb and ovaries">>
-				<<set $cash -= 20000>>
+				<<run cashX(-20000, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "mpregDog", weeksToCompletion: "10", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
@@ -327,7 +327,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $slaveOrgans.mpregHorse != 1>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Anal horse womb and ovaries">>
-				<<set $cash -= 20000>>
+				<<run cashX(-20000, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "mpregHorse", weeksToCompletion: "10", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
@@ -337,7 +337,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 		<<if $slaveOrgans.mpregCow != 1>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
 			<<link "Anal cow womb and ovaries">>
-				<<set $cash -= 20000>>
+				<<run cashX(-20000, "slaveSurgery", $activeSlave)>>
 				<<set _newOrgan = {type: "mpregCow", weeksToCompletion: "10", ID: 0}>>
 				<<set _newOrgan.ID = $activeSlave.ID>>
 				<<set $organs.push(_newOrgan)>>
diff --git a/src/uncategorized/masterSuite.tw b/src/uncategorized/masterSuite.tw
index 814fe559bb4..1928908a637 100644
--- a/src/uncategorized/masterSuite.tw
+++ b/src/uncategorized/masterSuite.tw
@@ -128,7 +128,7 @@ It is full of luxuries of all kinds. The slaves here live free of want or worry,
 	None of your slaves are serving here.
 <</if>>
 
-<br>&nbsp;&nbsp;&nbsp;&nbsp;[[Remodel the suite around a luxurious pit for group sex|Master Suite][$cash -= _Tmult1, $masterSuiteUpgradeLuxury = 2]] //Costs <<print cashFormat(_Tmult1)>>; will encourage fucktoys to fuck each other//
+<br>&nbsp;&nbsp;&nbsp;&nbsp;[[Remodel the suite around a luxurious pit for group sex|Master Suite][cashX(forceNeg(_Tmult1), "capEx"), $masterSuiteUpgradeLuxury = 2]] //Costs <<print cashFormat(_Tmult1)>>; will encourage fucktoys to fuck each other//
 
 <<elseif $masterSuiteUpgradeLuxury == 2>>
 
@@ -219,7 +219,7 @@ The true focus of the suite is, however, the fuckpit. This stepped depression in
 	is desolate and unpopulated.
 <</if>>
 
-<br>&nbsp;&nbsp;&nbsp;&nbsp;[[Refit the suite to the height of traditional opulence|Master Suite][$cash -= _Tmult1, $masterSuiteUpgradeLuxury = 1]] //Costs <<print cashFormat(_Tmult1)>>; will focus the suite on you//
+<br>&nbsp;&nbsp;&nbsp;&nbsp;[[Refit the suite to the height of traditional opulence|Master Suite][cashX(forceNeg(_Tmult1), "capEx"), $masterSuiteUpgradeLuxury = 1]] //Costs <<print cashFormat(_Tmult1)>>; will focus the suite on you//
 
 <<else>>
 
@@ -289,14 +289,14 @@ $masterSuiteNameCaps is furnished
 <<else>>
 	None of your slaves are serving here.
 <</if>>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;[[Refit the suite to the height of traditional opulence|Master Suite][$cash -= _Tmult2, $masterSuiteUpgradeLuxury = 1]] //Costs <<print cashFormat(_Tmult2)>> and will focus the suite on you//
-<br>&nbsp;&nbsp;&nbsp;&nbsp;[[Remodel the suite around a luxurious pit for group sex|Master Suite][$cash -= _Tmult2, $masterSuiteUpgradeLuxury = 2]] //Costs <<print cashFormat(_Tmult2)>>; will encourage fucktoys to fuck each other//
+<br>&nbsp;&nbsp;&nbsp;&nbsp;[[Refit the suite to the height of traditional opulence|Master Suite][cashX(forceNeg(_Tmult2), "capEx"), $masterSuiteUpgradeLuxury = 1]] //Costs <<print cashFormat(_Tmult2)>> and will focus the suite on you//
+<br>&nbsp;&nbsp;&nbsp;&nbsp;[[Remodel the suite around a luxurious pit for group sex|Master Suite][cashX(forceNeg(_Tmult2), "capEx"), $masterSuiteUpgradeLuxury = 2]] //Costs <<print cashFormat(_Tmult2)>>; will encourage fucktoys to fuck each other//
 
 <</if>>
 
 <br>$masterSuiteNameCaps has room for $masterSuite slaves to live comfortably<<if $masterSuiteUpgradeLuxury == 2>> in the moments when they're not in the fuckpit<<elseif $masterSuiteUpgradeLuxury == 1>> on its huge bed<</if>>. There <<if $masterSuiteSlaves == 1>>is<<else>>are<</if>> currently $masterSuiteSlaves slave<<if $masterSuiteSlaves != 1>>s<</if>> in $masterSuiteNameCaps.
 <<set _Tmult0 = Math.trunc($masterSuite*1000*$upgradeMultiplierArcology)>>
-[[Expand the Master Suite|Master Suite][$cash -= _Tmult0, $masterSuite += 2, $PC.engineering += .1]] //Costs <<print cashFormat(_Tmult0)>>//
+[[Expand the Master Suite|Master Suite][cashX(forceNeg(_Tmult0), "capEx"), $masterSuite += 2, $PC.engineering += .1]] //Costs <<print cashFormat(_Tmult0)>>//
 <<if $Concubine == 0 && $masterSuiteSlaves == 0>>
 	| [[Decommission the Master Suite|Main][$masterSuite = 0, $masterSuiteUpgradeLuxury = 0, $masterSuitePregnancySlaveLuxuries = 0, $masterSuiteDecoration = "standard", $masterSuitePregnancyFertilityDrugs = 0, $masterSuitePregnancyFertilitySupplements = 0, $masterSuiteUpgradePregnancy = 0, $masterSuiteHyperPregnancy = 0]]
 <</if>>
@@ -340,7 +340,7 @@ $masterSuiteNameCaps is furnished
 		Fertile slaves ''are being given'' supplements to their fertility drugs, further enhancing the chances of multiple pregnancy. [[End the supplement regime|Master Suite][$masterSuitePregnancyFertilitySupplements = 0]]<br>
 	<</if>>
 <<else>>
-	The master suite does not currently have special customizations to support slave pregnancy. [[Refit the suite to support and encourage slave pregnancy|Master Suite][$cash -= _Tmult3, $masterSuiteUpgradePregnancy = 1]] //Costs <<print cashFormat(_Tmult3)>>//
+	The master suite does not currently have special customizations to support slave pregnancy. [[Refit the suite to support and encourage slave pregnancy|Master Suite][cashX(forceNeg(_Tmult3), "capEx"), $masterSuiteUpgradePregnancy = 1]] //Costs <<print cashFormat(_Tmult3)>>//
 <</if>>
 <</if>>
 
diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw
index 81db0db0227..fa76c956d18 100644
--- a/src/uncategorized/remoteSurgery.tw
+++ b/src/uncategorized/remoteSurgery.tw
@@ -480,7 +480,7 @@ Work on $his chest:
 				[[Reshape them to be more normal|Surgery Degradation][$activeSlave.boobShape = "normal",cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave),$activeSlave.health -= 10,$surgeryType = "breastReconstruction"]]
 			<</if>>
 			<<if ($activeSlave.boobShape != "saggy") && ($activeSlave.boobShape != "downward-facing") && ($activeSlave.boobs >= 2000) && ($activeSlave.boobsImplant == 0) && ($meshImplants == 1) && ($surgeryUpgrade == 1)>>
-				| [[Implant a supportive mesh to preserve their shape|Surgery Degradation][$activeSlave.breastMesh = 1,$cash -= ($surgeryCost*($activeSlave.boobs/100)),$activeSlave.health -= 10,$surgeryType = "breastShapePreservation"]]
+				| [[Implant a supportive mesh to preserve their shape|Surgery Degradation][$activeSlave.breastMesh = 1,cashX(forceNeg($surgeryCost*($activeSlave.boobs/100)), "slaveSurgery", $activeSlave),$activeSlave.health -= 10,$surgeryType = "breastShapePreservation"]]
 			<</if>>
 		<</if>>
 	<</if>>
@@ -932,12 +932,12 @@ Work on $his sex:
 		<<elseif $activeSlave.broodmother > 0>>
 			$He has been made into a <<if $activeSlave.broodmother > 1>>hyper-<</if>>broodmother.
 			<<if $activeSlave.womb.length == 0 >>
-				[[Remove the pregnancy generator|Surgery Degradation][$activeSlave.preg = 0,$activeSlave.pregWeek = -2,$activeSlave.pregSource = 0,$activeSlave.pregWeek = 0,$activeSlave.pregKnown = 0,$activeSlave.pregType = 0,$activeSlave.broodmother = 0,$activeSlave.broodmotherFetuses = 0,$activeSlave.broodmotherOnHold = 0,$cash -= $surgeryCost,$activeSlave.pregControl = "none",$activeSlave.health -= 10,$surgeryType = "pregRemove"]]
+				[[Remove the pregnancy generator|Surgery Degradation][$activeSlave.preg = 0,$activeSlave.pregWeek = -2,$activeSlave.pregSource = 0,$activeSlave.pregWeek = 0,$activeSlave.pregKnown = 0,$activeSlave.pregType = 0,$activeSlave.broodmother = 0,$activeSlave.broodmotherFetuses = 0,$activeSlave.broodmotherOnHold = 0,cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave),$activeSlave.pregControl = "none",$activeSlave.health -= 10,$surgeryType = "pregRemove"]]
 			<<else>>
 				$He is pregnant right now, so $his broodmother implant can't be safely extracted.
 				<<if $activeSlave.broodmother == 1 && $activeSlave.broodmotherFetuses == 1>> /*hack can be applied only one time, for type 1 broodmothers, and only if implant already present*/
 					<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-					[[Hack the pregnancy generator|Surgery Degradation][$cash -= $surgeryCost,$activeSlave.pregControl = "none",$activeSlave.health -= 1,$surgeryType = "preg1hack"]] //This will trick the generator ova release logic, forcing it to release more than one ova each week. This is an untested override and can cause severe health problems.//
+					[[Hack the pregnancy generator|Surgery Degradation][cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave),$activeSlave.pregControl = "none",$activeSlave.health -= 1,$surgeryType = "preg1hack"]] //This will trick the generator ova release logic, forcing it to release more than one ova each week. This is an untested override and can cause severe health problems.//
 				<<elseif $activeSlave.broodmother == 1 && $activeSlave.broodmotherFetuses > 1>>
 					<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 					The implant firmware has already been adjusted.
@@ -947,7 +947,7 @@ Work on $his sex:
 			//$He is protected from extreme surgery//
 		<<elseif isFertile($activeSlave) && $activeSlave.ovaryAge <= 46>>
 			$He could be made into a broodmother.
-			[[Implant a pregnancy generator|Surgery Degradation][$activeSlave.preg = 1,$activeSlave.pregWeek = 1,$activeSlave.pregKnown = 1,$activeSlave.pregType = 1,$activeSlave.broodmother = 1,$activeSlave.broodmotherFetuses = 1,$cash -= $surgeryCost,$activeSlave.pregControl = "none",$activeSlave.health -= 10,$surgeryType = "preg"]] //This will have severe effects on $his health and mind//
+			[[Implant a pregnancy generator|Surgery Degradation][$activeSlave.preg = 1,$activeSlave.pregWeek = 1,$activeSlave.pregKnown = 1,$activeSlave.pregType = 1,$activeSlave.broodmother = 1,$activeSlave.broodmotherFetuses = 1,cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave),$activeSlave.pregControl = "none",$activeSlave.health -= 10,$surgeryType = "preg"]] //This will have severe effects on $his health and mind//
 		<<else>>
 			$His body cannot support being a broodmother.
 		<</if>>
@@ -1217,11 +1217,11 @@ $He has
 		<</if>>
 		<<if $activeSlave.geneticQuirks.hyperFertility == 2>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
-			[[Correct genetic hyper fertility|Surgery Degradation][$activeSlave.geneticQuirks.hyperFertility = 0,$cash -= $surgeryCost * 4, $activeSlave.health -= 40, $activeSlave.chem += 100,$surgeryType = "gene treatment"]]
+			[[Correct genetic hyper fertility|Surgery Degradation][$activeSlave.geneticQuirks.hyperFertility = 0,cashX(forceNeg($surgeryCost*4), "slaveSurgery", $activeSlave), $activeSlave.health -= 40, $activeSlave.chem += 100,$surgeryType = "gene treatment"]]
 		<</if>>
 		<<if $activeSlave.geneticQuirks.fertility == 2>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
-			[[Correct heightened fertility|Surgery Degradation][$activeSlave.geneticQuirks.fertility = 0,$cash -= $surgeryCost * 4, $activeSlave.health -= 40, $activeSlave.chem += 100,$surgeryType = "gene treatment"]]
+			[[Correct heightened fertility|Surgery Degradation][$activeSlave.geneticQuirks.fertility = 0,cashX(forceNeg($surgeryCost*4), "slaveSurgery", $activeSlave), $activeSlave.health -= 40, $activeSlave.chem += 100,$surgeryType = "gene treatment"]]
 		<</if>>
 	<</if>>
 	<br><br>
@@ -1535,7 +1535,7 @@ Work on $him structurally:
 			<<set _rems = $activeSlave.readyLimbs.findIndex(function(s) { return s.type == -1; })>>
 			<<if _rems == -1>>
 				<<link "Basic prosthetic limbs">>
-					<<set $cash -= 10000>>
+					<<run cashX(-10000, "slaveSurgery", $activeSlave)>>
 					<<set $activeLimbs = {weeksToCompletion: 4, ID: 0, type: "simple"}>>
 					<<set $activeLimbs.ID = $activeSlave.ID>>
 					<<set $limbs.push($activeLimbs)>>
@@ -1550,7 +1550,7 @@ Work on $him structurally:
 				<<if _rems == -1>>
 					|
 					<<link "Sexual functions">>
-						<<set $cash -= 15000>>
+						<<run cashX(-15000, "slaveSurgery", $activeSlave)>>
 						<<set $activeLimbs = {weeksToCompletion: 6, ID: 0, type: "sex"}>>
 						<<set $activeLimbs.ID = $activeSlave.ID>>
 						<<if $activeSlave.amp == 1>>
@@ -1567,7 +1567,7 @@ Work on $him structurally:
 				<<if _rems == -1>>
 					|
 					<<link "Beauty and grace">>
-						<<set $cash -= 15000>>
+						<<run cashX(-15000, "slaveSurgery", $activeSlave)>>
 						<<set $activeLimbs = {weeksToCompletion: 6, ID: 0, type: "beauty"}>>
 						<<set $activeLimbs.ID = $activeSlave.ID>>
 						<<if $activeSlave.amp == 1>>
@@ -1584,7 +1584,7 @@ Work on $him structurally:
 				<<if _rems == -1>>
 					|
 					<<link "Combat effectiveness">>
-						<<set $cash -= 15000>>
+						<<run cashX(-15000, "slaveSurgery", $activeSlave)>>
 						<<set $activeLimbs = {weeksToCompletion: 6, ID: 0, type: "combat"}>>
 						<<set $activeLimbs.ID = $activeSlave.ID>>
 						<<if $activeSlave.amp == 1>>
@@ -1602,7 +1602,7 @@ Work on $him structurally:
 				<<if _rems == -1>>
 					|
 					<<link "Highly advanced cybernetics">>
-						<<set $cash -= 25000>>
+						<<run cashX(-25000, "slaveSurgery", $activeSlave)>>
 						<<set $activeLimbs = {weeksToCompletion: 8, ID: 0, type: "cyber"}>>
 						<<set $activeLimbs.ID = $activeSlave.ID>>
 						<<if $activeSlave.amp == 1>>
-- 
GitLab