diff --git a/src/js/rulesAutosurgery.tw b/src/js/rulesAutosurgery.tw
index d079e7aa7ba2e2283fd4ab5ca6fe06424a14eae7..5d518f25af09813380b8a5e34fd54bfc2ed78533 100644
--- a/src/js/rulesAutosurgery.tw
+++ b/src/js/rulesAutosurgery.tw
@@ -6,12 +6,15 @@ window.rulesAutosurgery = (function() {
 	let r = ""
 	return rulesAutoSurgery
 
-	function rulesAutoSurgery() {
+	function rulesAutoSurgery(slave) {
 		V = State.variables
-		V.surgeries = []
-		delete V.thisSurgery
-
-		ProcessHGTastes()
+		const surgeries = []
+		const thisSurgery = ProcessHGTastes(slave)
+		if (slave.health > 20)
+			CommitSurgery(slave, thisSurgery, surgeries)
+		if (surgeries.length > 0)
+			PrintResult(slave, thisSurgery, surgeries)
+		return r
 	}
 	
 	function autoSurgerySelector(slave, ruleset) {
@@ -44,10 +47,11 @@ window.rulesAutosurgery = (function() {
 		return surgery;
 	}
 
-	function ProcessHGTastes() {
+	function ProcessHGTastes(slave) {
+		let thisSurgery
 		switch (V.HGTastes) {
 		case 1:
-			V.thisSurgery = {
+			thisSurgery = {
 				surgery_lactation: 0,
 				surgery_cosmetic: 1,
 				surgery_faceShape: "cute",
@@ -63,7 +67,7 @@ window.rulesAutosurgery = (function() {
 			}
 			break 
 		case 2:
-			V.thisSurgery = {
+			thisSurgery = {
 				surgery_lactation: 0,
 				surgery_cosmetic: 1,
 				surgery_faceShape: "cute",
@@ -79,7 +83,7 @@ window.rulesAutosurgery = (function() {
 			}
 			break
 		case 3:
-			V.thisSurgery = {
+			thisSurgery = {
 				surgery_lactation: 0,
 				surgery_cosmetic: 1,
 				surgery_faceShape: "cute",
@@ -95,7 +99,7 @@ window.rulesAutosurgery = (function() {
 			}
 			break
 		case 4:
-			V.thisSurgery = {
+			thisSurgery = {
 				surgery_lactation: 1,
 				surgery_cosmetic: 1,
 				surgery_faceShape: "cute",
@@ -111,354 +115,367 @@ window.rulesAutosurgery = (function() {
 			}
 			break
 		default:
-			V.thisSurgery = autoSurgerySelector(V.slaves[V.i], V.defaultRules)
-			if ((V.thisSurgery.surgery_hips !== "no default setting") && (V.thisSurgery.surgery_butt !== "no default setting")) {
-				if (V.slaves[V.i].hips < -1) {
-					if (V.thisSurgery.surgery_butt > 2)
-						V.thisSurgery.surgery_butt = 2
-				} else if (V.slaves[V.i].hips < 0) {
-					if (V.thisSurgery.surgery_butt > 4)
-						V.thisSurgery.surgery_butt = 4
-				} else if (V.slaves[V.i].hips > 0) {
-					if (V.thisSurgery.surgery_butt > 8)
-						V.thisSurgery.surgery_butt = 8
-				} else if (V.slaves[V.i].hips > 1) {
+			thisSurgery = autoSurgerySelector(slave, V.defaultRules)
+			if ((thisSurgery.surgery_hips !== "no default setting") && (thisSurgery.surgery_butt !== "no default setting")) {
+				if (slave.hips < -1) {
+					if (thisSurgery.surgery_butt > 2)
+						thisSurgery.surgery_butt = 2
+				} else if (slave.hips < 0) {
+					if (thisSurgery.surgery_butt > 4)
+						thisSurgery.surgery_butt = 4
+				} else if (slave.hips > 0) {
+					if (thisSurgery.surgery_butt > 8)
+						thisSurgery.surgery_butt = 8
+				} else if (slave.hips > 1) {
 					true
 				} else {
-					if (V.thisSurgery.surgery_butt > 6)
-						V.thisSurgery.surgery_butt = 6
+					if (thisSurgery.surgery_butt > 6)
+						thisSurgery.surgery_butt = 6
 				}
 			}
 			break
 		}
+		return thisSurgery
 	}
-})()
 
-/*
-
-<<set $seed = 0>>
-<<for $seed == 0>>
-	<<if ($slaves[$i].health <= 20)>>
-		<<set $seed = 1>>
-	<<else>>
-		<<if ($slaves[$i].eyes == -1) && ($thisSurgery.eyes == 1)>>
-			<<set $surgeries.push("surgery to correct her vision"), $slaves[$i].eyes = 1, $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].eyes == 1) && ($thisSurgery.eyes == -1)>>
-			<<set $surgeries.push("surgery to blur her vision"), $slaves[$i].eyes = -1, $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].lactation == 2) && ($thisSurgery.lactation == 0)>>
-			<<set $surgeries.push("surgery to remove her lactation implants"), $slaves[$i].lactation = 0, $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif $slaves[$i].lactation != 2 && ($thisSurgery.lactation == 1)>>
-			<<set $surgeries.push("lactation inducing implanted drugs"), $slaves[$i].lactation = 2, $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].prostate == 2) && ($thisSurgery.prostate == 0)>>
-			<<set $surgeries.push("surgery to remove her prostate implant"), $slaves[$i].prostate = 0, $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif $slaves[$i].prostate == 1 && ($thisSurgery.prostate == 1)>>
-			<<set $surgeries.push("a precum production enhancing drug implant"), $slaves[$i].prostate = 2, $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].anus > 3) && ($thisSurgery.cosmetic > 0)>>
-			<<set $surgeries.push("a restored anus")>>
-			<<set $slaves[$i].anus = 3>>
-			<<if $slaves[$i].analSkill > 10>>
-				<<set $slaves[$i].analSkill -= 10>>
-			<</if>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].vagina > 3) && ($thisSurgery.cosmetic > 0)>>
-			<<set $surgeries.push("a restored pussy")>>
-			<<set $slaves[$i].vagina = 3>>
-			<<if $slaves[$i].vaginalSkill > 10>>
-				<<set $slaves[$i].vaginalSkill -= 10>>
-			<</if>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].faceImplant <= 15) && ($slaves[$i].face <= 95) && ($thisSurgery.cosmetic > 0)>>
-			<<set $surgeries.push("a nicer face")>>
-			<<if $slaves[$i].faceShape == "masculine">><<set $slaves[$i].faceShape = "androgynous">><</if>>
-			<<set $slaves[$i].faceImplant += 25-5*Math.trunc($PC.medicine/100)-5*$surgeryUpgrade>>
-			<<set $slaves[$i].face = Math.clamp($slaves[$i].face+20,-100,100)>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].faceImplant <= 15) && ($slaves[$i].ageImplant != 1) && ($slaves[$i].visualAge >= 25) && ($thisSurgery.cosmetic > 0)>>
-			<<set $surgeries.push("an age lift")>>
-			<<set $slaves[$i].ageImplant = 1>>
-			<<set $slaves[$i].faceImplant += 25-5*Math.trunc($PC.medicine/100)-5*$surgeryUpgrade>>
-			<<if $slaves[$i].visualAge > 80>>
-				<<set $slaves[$i].visualAge -= 40>>
-			<<elseif $slaves[$i].visualAge >= 70>>
-				<<set $slaves[$i].visualAge -= 30>>
-			<<elseif $slaves[$i].visualAge > 50>>
-				<<set $slaves[$i].visualAge -= 20>>
-			<<elseif $slaves[$i].visualAge > 36>>
-				<<set $slaves[$i].visualAge -= 10>>
-			<<else>>
-				<<set $slaves[$i].visualAge -= 5>>
-			<</if>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif (($slaves[$i].underArmHStyle != "bald" && $slaves[$i].underArmHStyle != "hairless") || ($slaves[$i].pubicHStyle != "bald" && $slaves[$i].pubicHStyle != "hairless")) && ($thisSurgery.bodyhair == 2)>>
-			<<set $surgeries.push("body hair removal")>>
-			<<if $slaves[$i].underArmHStyle != "hairless">><<set $slaves[$i].underArmHStyle = "bald">><</if>>
-			<<if $slaves[$i].pubicHStyle != "hairless">><<set $slaves[$i].pubicHStyle = "bald">><</if>>
-			<<set $cash -= $surgeryCost>>
-		<<elseif ($slaves[$i].bald == 0 || $slaves[$i].hStyle != "bald") && ($thisSurgery.hair == 2)>>
-			<<set $surgeries.push("hair removal")>>
-			<<set $slaves[$i].hStyle = "bald", $slaves[$i].bald = 1>>
-			<<set $cash -= $surgeryCost>>
-		<<elseif ($slaves[$i].weight >= 10) && ($thisSurgery.cosmetic > 0)>>
-			<<set $surgeries.push("liposuction")>>
-			<<set $slaves[$i].weight -= 50>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].voice == 1) && ($slaves[$i].voiceImplant == 0) && ($thisSurgery.cosmetic > 0)>>
-			<<set $surgeries.push("a feminine voice")>>
-			<<set $slaves[$i].voice += 1>>
-			<<set $slaves[$i].voiceImplant += 1>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].waist >= -10) && ($thisSurgery.cosmetic > 0)>>
-			<<set $surgeries.push("a narrower waist")>>
-			<<set $slaves[$i].waist -= 20>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif (($slaves[$i].boobShape == "saggy") || ($slaves[$i].boobShape == "downward-facing")) && ($thisSurgery.cosmetic > 0) && ($slaves[$i].breastMesh != 1)>>
-			<<set $surgeries.push("a breast lift")>>
-			<<set $slaves[$i].boobShape = "normal">>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif (($slaves[$i].boobShape == "normal") || ($slaves[$i].boobShape == "wide-set")) && ($thisSurgery.cosmetic > 0) && ($slaves[$i].breastMesh != 1)>>
-			<<if $slaves[$i].boobs > 800>>
-				<<set $slaves[$i].boobShape = "torpedo-shaped">>
-			<<else>>
-				<<set $slaves[$i].boobShape = "perky">>
-			<</if>>
-			<<set $surgeries.push("more interestingly shaped breasts")>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($thisSurgery.lips == 0) && ($slaves[$i].lipsImplant > 0)>>
-			<<set $surgeries.push("surgery to remove her lip implants")>>
-			<<set $slaves[$i].lips -= $slaves[$i].lipsImplant>>
-			<<set $slaves[$i].lipsImplant = 0>>
-			<<if $slaves[$i].oralSkill > 10>>
-				<<set $slaves[$i].oralSkill -= 10>>
-			<</if>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].lips <= 95) && ($slaves[$i].lips < $thisSurgery.lips)>>
-			<<if $thisSurgery.lips !== "no default setting">>
-				<<set $surgeries.push("bigger lips")>>
-				<<set $slaves[$i].lipsImplant += 10>>
-				<<set $slaves[$i].lips += 10>>
-				<<if $slaves[$i].oralSkill > 10>>
-					<<set $slaves[$i].oralSkill -= 10>>
-				<</if>>
-				<<set $cash -= $surgeryCost>>
-				<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<</if>>
-		<<elseif ($slaves[$i].faceImplant <= 45) && ($slaves[$i].face <= 95) && ($thisSurgery.cosmetic == 2)>>
-			<<set $surgeries.push("a nicer face")>>
-			<<if $slaves[$i].faceShape == "masculine">><<set $slaves[$i].faceShape = "androgynous">><</if>>
-			<<set $slaves[$i].faceImplant += 25-5*Math.trunc($PC.medicine/100)-5*$surgeryUpgrade>>
-			<<set $slaves[$i].face = Math.clamp($slaves[$i].face+20,-100,100)>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].hips < 1) && ($slaves[$i].hips < $thisSurgery.hips) && ($surgeryUpgrade == 1)>>
-			<<set $surgeries.push("wider hips")>>
-			<<set $slaves[$i].hips++, $slaves[$i].hipsImplant++>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].faceImplant <= 45) && ($slaves[$i].ageImplant != 1) && ($slaves[$i].visualAge >= 25) && ($thisSurgery.cosmetic == 2)>>
-			<<set $surgeries.push("an age lift")>>
-			<<set $slaves[$i].ageImplant = 1>>
-			<<if $slaves[$i].visualAge > 80>>
-				<<set $slaves[$i].visualAge -= 40>>
-			<<elseif $slaves[$i].visualAge >= 70>>
-				<<set $slaves[$i].visualAge -= 30>>
-			<<elseif $slaves[$i].visualAge > 50>>
-				<<set $slaves[$i].visualAge -= 20>>
-			<<elseif $slaves[$i].visualAge > 36>>
-				<<set $slaves[$i].visualAge -= 10>>
-			<<else>>
-				<<set $slaves[$i].visualAge -= 5>>
-			<</if>>
-			<<set $slaves[$i].faceImplant += 25-5*Math.trunc($PC.medicine/100)-5*$surgeryUpgrade>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].waist >= -95) && ($thisSurgery.cosmetic == 2) && ($seeExtreme == 1)>>
-			<<set $surgeries.push("a narrower waist")>>
-			<<set $slaves[$i].waist = Math.clamp($slaves[$i].waist-20,-100,100)>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].voice < 3) && ($slaves[$i].voiceImplant == 0) && ($thisSurgery.cosmetic == 2)>>
-			<<set $surgeries.push("a bimbo's voice")>>
-			<<set $slaves[$i].voice += 1>>
-			<<set $slaves[$i].voiceImplant += 1>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($thisSurgery.butt == 0) && ($slaves[$i].buttImplant > 0)>>
-			<<set $surgeries.push("surgery to remove her butt implants")>>
-			<<set $slaves[$i].butt -= $slaves[$i].buttImplant>>
-			<<set $slaves[$i].buttImplant = 0>>
-			<<set $slaves[$i].buttImplantType = 0>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($thisSurgery.boobs == 0) && ($slaves[$i].boobsImplant > 0)>>
-			<<set $surgeries.push("surgery to remove her boob implants")>>
-			<<set $slaves[$i].boobs -= $slaves[$i].boobsImplant>>
-			<<set $slaves[$i].boobsImplant = 0>>
-			<<set $slaves[$i].boobsImplantType = 0>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].butt <= 3) && ($slaves[$i].butt < $thisSurgery.butt)>>
-			<<if $thisSurgery.butt !== "no default setting">>
-				<<set $surgeries.push("a bigger butt")>>
-				<<set $slaves[$i].buttImplant = 1>>
-				<<set $slaves[$i].butt += 1>>
-				<<set $cash -= $surgeryCost>>
-				<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<</if>>
-		<<elseif ($slaves[$i].boobs <= 600) && ($slaves[$i].lactation < 2) && ($slaves[$i].boobs+400 <= $thisSurgery.boobs)>>
-			<<if $thisSurgery.boobs !== "no default setting">>
-				<<set $surgeries.push("bigger boobs")>>
-				<<set $slaves[$i].boobsImplant += 400>>
-				<<set $slaves[$i].boobs += 400>>
-				<<set $cash -= $surgeryCost>>
-				<<if $PC.medicine >= 100>>
-				<<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<</if>>
-		<<elseif ($slaves[$i].boobs <= 600) && ($slaves[$i].lactation < 2) && ($slaves[$i].boobs+200 <= $thisSurgery.boobs)>>
-			<<if $thisSurgery.boobs !== "no default setting">>
-				<<set $surgeries.push("modestly bigger boobs")>>
-				<<set $slaves[$i].boobsImplant += 200>>
-				<<set $slaves[$i].boobs += 200>>
-				<<set $cash -= $surgeryCost>>
-				<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<</if>>
-		<<elseif ($slaves[$i].butt <= 5) && ($slaves[$i].butt < $thisSurgery.butt)>>
-			<<if $thisSurgery.butt !== "no default setting">>
-				<<set $surgeries.push("a bigger butt")>>
-				<<set $slaves[$i].buttImplant = 1>>
-				<<set $slaves[$i].butt += 1>>
-				<<set $cash -= $surgeryCost>>
-				<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<</if>>
-		<<elseif ($slaves[$i].boobs <= 2000) && ($slaves[$i].lactation < 2) && ($slaves[$i].boobs+400 < $thisSurgery.boobs)>>
-			<<if $thisSurgery.boobs !== "no default setting">>
-				<<set $surgeries.push("bigger boobs")>>
-				<<set $slaves[$i].boobsImplant += 400>>
-				<<set $slaves[$i].boobs += 400>>
-				<<set $cash -= $surgeryCost>>
-				<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<</if>>
-		<<elseif ($slaves[$i].anus > 0) && ($surgeryUpgrade == 1) && ($thisSurgery.holes == 2)>>
-			<<set $surgeries.push("a virgin anus")>>
-			<<set $slaves[$i].anus = 0>>
-			<<if $slaves[$i].analSkill > 10>>
-				<<set $slaves[$i].analSkill -= 10>>
-			<</if>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].vagina > 0) && ($surgeryUpgrade == 1) && ($thisSurgery.holes == 2)>>
-			<<set $surgeries.push("a virgin pussy")>>
-			<<set $slaves[$i].vagina = 0>>
-			<<if $slaves[$i].vaginalSkill > 10>>
-				<<set $slaves[$i].vaginalSkill -= 10>>
-			<</if>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].hips < 2) && ($slaves[$i].hips < $thisSurgery.hips) && ($surgeryUpgrade == 1)>>
-			<<set $surgeries.push("wider hips")>>
-			<<set $slaves[$i].hips++, $slaves[$i].hipsImplant++>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].anus > 1) && ($thisSurgery.holes == 1)>>
-			<<set $surgeries.push("a tighter anus")>>
-			<<set $slaves[$i].anus = 1>>
-			<<if $slaves[$i].analSkill > 10>>
-				<<set $slaves[$i].analSkill -= 10>>
-			<</if>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].vagina > 1) && ($thisSurgery.holes == 1)>>
-			<<set $surgeries.push("a tighter pussy")>>
-			<<set $slaves[$i].vagina = 1>>
-			<<if $slaves[$i].vaginalSkill > 10>>
-				<<set $slaves[$i].vaginalSkill -= 10>>
-			<</if>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif ($slaves[$i].butt <= 8) && ($slaves[$i].butt < $thisSurgery.butt)>>
-			<<if $thisSurgery.butt !== "no default setting">>
-				<<set $surgeries.push("a bigger butt")>>
-				<<set $slaves[$i].buttImplant = 1>>
-				<<set $slaves[$i].butt += 1>>
-				<<set $cash -= $surgeryCost>>
-				<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<</if>>
-		<<elseif ($slaves[$i].boobs <= 9000) && ($slaves[$i].lactation < 2) && ($slaves[$i].boobs < $thisSurgery.boobs)>>
-			<<if $thisSurgery.boobs !== "no default setting">>
-				<<set $surgeries.push("bigger boobs")>>
-				<<set $slaves[$i].boobsImplant += 200>>
-				<<set $slaves[$i].boobs += 200>>
-				<<set $cash -= $surgeryCost>>
-				<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<</if>>
-		<<elseif ($slaves[$i].hips < 3) && ($slaves[$i].hips < $thisSurgery.hips) && ($surgeryUpgrade == 1)>>
-			<<set $surgeries.push("wider hips")>>
-			<<set $slaves[$i].hips++, $slaves[$i].hipsImplant++>>
-			<<set $cash -= $surgeryCost>>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-		<<elseif $slaves[$i].bellyImplant < 0 && $bellyImplants > 0 && $thisSurgery.bellyImplant == "install" && $slaves[$i].womb.length == 0 && $slaves[$i].broodmother == 0>>
-			<<set $slaves[$i].bellyImplant = 100>>
-			<<set $slaves[$i].preg = -2>>
-			<<set $cash -= $surgeryCost>>
-			<<if $activeSlave.ovaries == 1 || $activeSlave.mpreg == 1>>
-				<<set $surgeries.push("belly implant"), $surgeryType = "bellyIn">>
-				<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<<else>>
-				<<set $surgeries.push("male belly implant"), $surgeryType = "bellyInMale">>
-				<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 25>><<else>><<set $slaves[$i].health -= 50>><</if>>
-			<</if>>
+	function CommitSurgery(slave, thisSurgery, surgeries) {
+		if ((slave.eyes == -1) && (thisSurgery.eyes == 1)) {
+			surgeries.push("surgery to correct her vision")
+			slave.eyes = 1
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.eyes == 1) && (thisSurgery.eyes == -1)) {
+			surgeries.push("surgery to blur her vision")
+			slave.eyes = -1
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.lactation == 2) && (thisSurgery.lactation == 0)) {
+			surgeries.push("surgery to remove her lactation implants")
+			slave.lactation = 0
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if (slave.lactation != 2 && (thisSurgery.lactation == 1)) {
+			surgeries.push("lactation inducing implanted drugs")
+			slave.lactation = 2
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.prostate == 2) && (thisSurgery.prostate == 0)) {
+			surgeries.push("surgery to remove her prostate implant")
+			slave.prostate = 0
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if (slave.prostate == 1 && (thisSurgery.prostate == 1)) {
+			surgeries.push("a precum production enhancing drug implant")
+			slave.prostate = 2
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.anus > 3) && (thisSurgery.cosmetic > 0)) {
+			surgeries.push("a restored anus")
+			slave.anus = 3
+			if (slave.analSkill > 10) {
+				slave.analSkill -= 10
+			}
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.vagina > 3) && (thisSurgery.cosmetic > 0)) {
+			surgeries.push("a restored pussy")
+			slave.vagina = 3
+			if (slave.vaginalSkill > 10) {
+				slave.vaginalSkill -= 10
+			}
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.faceImplant <= 15) && (slave.face <= 95) && (thisSurgery.cosmetic > 0)) {
+			surgeries.push("a nicer face")
+			if (slave.faceShape == "masculine") {slave.faceShape = "androgynous"}
+			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/100)-5*V.surgeryUpgrade
+			slave.face = Math.clamp(slave.face+20,-100,100)
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.faceImplant <= 15) && (slave.ageImplant != 1) && (slave.visualAge >= 25) && (thisSurgery.cosmetic > 0)) {
+			surgeries.push("an age lift")
+			slave.ageImplant = 1
+			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/100)-5*V.surgeryUpgrade
+			if (slave.visualAge > 80) {
+				slave.visualAge -= 40
+			} else if (slave.visualAge >= 70) {
+				slave.visualAge -= 30
+			} else if (slave.visualAge > 50) {
+				slave.visualAge -= 20
+			} else if (slave.visualAge > 36) {
+				slave.visualAge -= 10
+			} else {
+				slave.visualAge -= 5
+			}
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if (((slave.underArmHStyle != "bald" && slave.underArmHStyle != "hairless") || (slave.pubicHStyle != "bald" && slave.pubicHStyle != "hairless")) && (thisSurgery.bodyhair == 2)) {
+			surgeries.push("body hair removal")
+			if (slave.underArmHStyle != "hairless") {slave.underArmHStyle = "bald"}
+			if (slave.pubicHStyle != "hairless") {slave.pubicHStyle = "bald"}
+			V.cash -= V.surgeryCost
+		} else if ((slave.bald == 0 || slave.hStyle != "bald") && (thisSurgery.hair == 2)) {
+			surgeries.push("hair removal")
+			slave.hStyle = "bald"
+			slave.bald = 1
+			V.cash -= V.surgeryCost
+		} else if ((slave.weight >= 10) && (thisSurgery.cosmetic > 0)) {
+			surgeries.push("liposuction")
+			slave.weight -= 50
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.voice == 1) && (slave.voiceImplant == 0) && (thisSurgery.cosmetic > 0)) {
+			surgeries.push("a feminine voice")
+			slave.voice += 1
+			slave.voiceImplant += 1
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.waist >= -10) && (thisSurgery.cosmetic > 0)) {
+			surgeries.push("a narrower waist")
+			slave.waist -= 20
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if (((slave.boobShape == "saggy") || (slave.boobShape == "downward-facing")) && (thisSurgery.cosmetic > 0) && (slave.breastMesh != 1)) {
+			surgeries.push("a breast lift")
+			slave.boobShape = "normal"
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if (((slave.boobShape == "normal") || (slave.boobShape == "wide-set")) && (thisSurgery.cosmetic > 0) && (slave.breastMesh != 1)) {
+			if (slave.boobs > 800) {
+				slave.boobShape = "torpedo-shaped"
+			} else {
+				slave.boobShape = "perky"
+			}
+			surgeries.push("more interestingly shaped breasts")
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((thisSurgery.lips == 0) && (slave.lipsImplant > 0)) {
+			surgeries.push("surgery to remove her lip implants")
+			slave.lips -= slave.lipsImplant
+			slave.lipsImplant = 0
+			if (slave.oralSkill > 10) {
+				slave.oralSkill -= 10
+			}
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.lips <= 95) && (slave.lips < thisSurgery.lips)) {
+			if (thisSurgery.lips !== "no default setting") {
+				surgeries.push("bigger lips")
+				slave.lipsImplant += 10
+				slave.lips += 10
+				if (slave.oralSkill > 10) {
+					slave.oralSkill -= 10
+				}
+				V.cash -= V.surgeryCost
+				if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+			}
+		} else if ((slave.faceImplant <= 45) && (slave.face <= 95) && (thisSurgery.cosmetic == 2)) {
+			surgeries.push("a nicer face")
+			if (slave.faceShape == "masculine") {slave.faceShape = "androgynous"}
+			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/100)-5*V.surgeryUpgrade
+			slave.face = Math.clamp(slave.face+20,-100,100)
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.hips < 1) && (slave.hips < thisSurgery.hips) && (V.surgeryUpgrade == 1)) {
+			surgeries.push("wider hips")
+			slave.hips++
+			slave.hipsImplant++
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.faceImplant <= 45) && (slave.ageImplant != 1) && (slave.visualAge >= 25) && (thisSurgery.cosmetic == 2)) {
+			surgeries.push("an age lift")
+			slave.ageImplant = 1
+			if (slave.visualAge > 80) {
+				slave.visualAge -= 40
+			} else if (slave.visualAge >= 70) {
+				slave.visualAge -= 30
+			} else if (slave.visualAge > 50) {
+				slave.visualAge -= 20
+			} else if (slave.visualAge > 36) {
+				slave.visualAge -= 10
+			} else {
+				slave.visualAge -= 5
+			}
+			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/100)-5*V.surgeryUpgrade
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.waist >= -95) && (thisSurgery.cosmetic == 2) && (V.seeExtreme == 1)) {
+			surgeries.push("a narrower waist")
+			slave.waist = Math.clamp(slave.waist-20,-100,100)
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.voice < 3) && (slave.voiceImplant == 0) && (thisSurgery.cosmetic == 2)) {
+			surgeries.push("a bimbo's voice")
+			slave.voice += 1
+			slave.voiceImplant += 1
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((thisSurgery.butt == 0) && (slave.buttImplant > 0)) {
+			surgeries.push("surgery to remove her butt implants")
+			slave.butt -= slave.buttImplant
+			slave.buttImplant = 0
+			slave.buttImplantType = 0
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((thisSurgery.boobs == 0) && (slave.boobsImplant > 0)) {
+			surgeries.push("surgery to remove her boob implants")
+			slave.boobs -= slave.boobsImplant
+			slave.boobsImplant = 0
+			slave.boobsImplantType = 0
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.butt <= 3) && (slave.butt < thisSurgery.butt)) {
+			if (thisSurgery.butt !== "no default setting") {
+				surgeries.push("a bigger butt")
+				slave.buttImplant = 1
+				slave.butt += 1
+				V.cash -= V.surgeryCost
+				if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+			}
+		} else if ((slave.boobs <= 600) && (slave.lactation < 2) && (slave.boobs+400 <= thisSurgery.boobs)) {
+			if (thisSurgery.boobs !== "no default setting") {
+				surgeries.push("bigger boobs")
+				slave.boobsImplant += 400
+				slave.boobs += 400
+				V.cash -= V.surgeryCost
+				if (V.PC.medicine >= 100) {
+				slave.health -= 5} else {slave.health -= 10}
+			}
+		} else if ((slave.boobs <= 600) && (slave.lactation < 2) && (slave.boobs+200 <= thisSurgery.boobs)) {
+			if (thisSurgery.boobs !== "no default setting") {
+				surgeries.push("modestly bigger boobs")
+				slave.boobsImplant += 200
+				slave.boobs += 200
+				V.cash -= V.surgeryCost
+				if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+			}
+		} else if ((slave.butt <= 5) && (slave.butt < thisSurgery.butt)) {
+			if (thisSurgery.butt !== "no default setting") {
+				surgeries.push("a bigger butt")
+				slave.buttImplant = 1
+				slave.butt += 1
+				V.cash -= V.surgeryCost
+				if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+			}
+		} else if ((slave.boobs <= 2000) && (slave.lactation < 2) && (slave.boobs+400 < thisSurgery.boobs)) {
+			if (thisSurgery.boobs !== "no default setting") {
+				surgeries.push("bigger boobs")
+				slave.boobsImplant += 400
+				slave.boobs += 400
+				V.cash -= V.surgeryCost
+				if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+			}
+		} else if ((slave.anus > 0) && (V.surgeryUpgrade == 1) && (thisSurgery.holes == 2)) {
+			surgeries.push("a virgin anus")
+			slave.anus = 0
+			if (slave.analSkill > 10) {
+				slave.analSkill -= 10
+			}
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.vagina > 0) && (V.surgeryUpgrade == 1) && (thisSurgery.holes == 2)) {
+			surgeries.push("a virgin pussy")
+			slave.vagina = 0
+			if (slave.vaginalSkill > 10) {
+				slave.vaginalSkill -= 10
+			}
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.hips < 2) && (slave.hips < thisSurgery.hips) && (V.surgeryUpgrade == 1)) {
+			surgeries.push("wider hips")
+			slave.hips++
+			slave.hipsImplant++
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.anus > 1) && (thisSurgery.holes == 1)) {
+			surgeries.push("a tighter anus")
+			slave.anus = 1
+			if (slave.analSkill > 10) {
+				slave.analSkill -= 10
+			}
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.vagina > 1) && (thisSurgery.holes == 1)) {
+			surgeries.push("a tighter pussy")
+			slave.vagina = 1
+			if (slave.vaginalSkill > 10) {
+				slave.vaginalSkill -= 10
+			}
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if ((slave.butt <= 8) && (slave.butt < thisSurgery.butt)) {
+			if (thisSurgery.butt !== "no default setting") {
+				surgeries.push("a bigger butt")
+				slave.buttImplant = 1
+				slave.butt += 1
+				V.cash -= V.surgeryCost
+				if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+			}
+		} else if ((slave.boobs <= 9000) && (slave.lactation < 2) && (slave.boobs < thisSurgery.boobs)) {
+			if (thisSurgery.boobs !== "no default setting") {
+				surgeries.push("bigger boobs")
+				slave.boobsImplant += 200
+				slave.boobs += 200
+				V.cash -= V.surgeryCost
+				if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+			}
+		} else if ((slave.hips < 3) && (slave.hips < thisSurgery.hips) && (V.surgeryUpgrade == 1)) {
+			surgeries.push("wider hips")
+			slave.hips++
+			slave.hipsImplant++
+			V.cash -= V.surgeryCost
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+		} else if (slave.bellyImplant < 0 && V.bellyImplants > 0 && thisSurgery.bellyImplant == "install" && slave.womb.length == 0 && slave.broodmother == 0) {
+			slave.bellyImplant = 100
+			slave.preg = -2
+			V.cash -= V.surgeryCost
+			if (V.activeSlave.ovaries == 1 || V.activeSlave.mpreg == 1) {
+				surgeries.push("belly implant")
+				V.surgeryType = "bellyIn"
+				if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+			} else {
+				surgeries.push("male belly implant")
+				V.surgeryType = "bellyInMale"
+				if (V.PC.medicine >= 100) {slave.health -= 25} else {slave.health -= 50}
+			}
+			// TODO
+			/*
 			<<silently>>
-				<<set _tmpNextL = $nextLink, _tmpNextB = $nextButton>>
+				_tmpNextL = V.nextLink
+				_tmpNextB = V.nextButton
 				<<include "Surgery Degradation">>
-				<<set $nextLink = _tmpNextL, $nextButton = _tmpNextB>>
+				V.nextLink = _tmpNextL
+				V.nextButton = _tmpNextB
 			<</silently>>
-		<<elseif $slaves[$i].bellyImplant >= 0 && $thisSurgery.bellyImplant == "remove">>
-			<<set $surgeries.push("belly implant removal"), $surgeryType = "bellyOut">>
-			<<if $PC.medicine >= 100>><<set $slaves[$i].health -= 5>><<else>><<set $slaves[$i].health -= 10>><</if>>
-			<<set $slaves[$i].preg = 0>>
-			<<set $slaves[$i].bellyImplant = -1>>
-			<<set $cash -= $surgeryCost>>
+			*/
+		} else if (slave.bellyImplant >= 0 && thisSurgery.bellyImplant == "remove") {
+			surgeries.push("belly implant removal")
+			V.surgeryType = "bellyOut"
+			if (V.PC.medicine >= 100) {slave.health -= 5} else {slave.health -= 10}
+			slave.preg = 0
+			slave.bellyImplant = -1
+			V.cash -= V.surgeryCost
+			// TODO
+			/*
 			<<silently>>
-				<<set _tmpNextL = $nextLink, _tmpNextB = $nextButton>>
+				_tmpNextL = V.nextLink
+				_tmpNextB = V.nextButton
 				<<include "Surgery Degradation">>
-				<<set $nextLink = _tmpNextL, $nextButton = _tmpNextB>>
+				V.nextLink = _tmpNextL
+				V.nextButton = _tmpNextB
 			<</silently>>
-		<<else>>
-			<<set $seed = 1>>
-		<</if>>
-	<</if>>
-<</for>>
+			*/
+		}
+	}
 
-<<if $surgeries.length > 0>>
-	<<set $surgeriesDisplay = "">>
-	<<for $j = 0; $j < $surgeries.length; $j++>>
-		<<set $seed = $surgeries[$j]>>
-		<<set $surgeriesDisplay = ($surgeriesDisplay + $seed)>>
-		<<if $j < $surgeries.length-2>>
-			<<set $surgeriesDisplay = ($surgeriesDisplay + ", ")>>
-		<<elseif $j < $surgeries.length-1>>
-			<<if $surgeries.length > 2>>
-				<<set $surgeriesDisplay = ($surgeriesDisplay + ", and ")>>
-			<<else>>
-				<<set $surgeriesDisplay = ($surgeriesDisplay + " and ")>>
-			<</if>>
-		<</if>>
-	<</for>>
-	<<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>>, ordered to apply surgery, gives $slaves[$i].slaveName @@.lime;$surgeriesDisplay.@@
-<</if>>
-*/
+	function PrintResult(slave, thisSurgery, surgeries) {
+		let surgeriesDisplay = ""
+		if (surgeries.length === 1)
+			surgeriesDisplay = surgeries[0]
+		else {
+			surgeriesDisplay = surgeries.slice(0, surgeries.length - 1).join(", ")
+			surgeriesDisplay += ", and" + surgeries[surgeries.length - 1]
+		}
+		r += `${V.assistantName === "your personal assistant" ? "Your personal assistant" : V.assistantName}, ordered to apply surgery, gives ${slave.slaveName} <span class="lime">${surgeriesDisplay}.</span>`
+	}
+})()
diff --git a/src/uncategorized/rulesAutosurgery.tw b/src/uncategorized/rulesAutosurgery.tw
deleted file mode 100644
index 5b3b8ceb2398a20e7dfdc64d75404fa8d3af7749..0000000000000000000000000000000000000000
--- a/src/uncategorized/rulesAutosurgery.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Rules Autosurgery [nobr]
-
-<<= rulesAutosurgery() >>
diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw
index 416e35c7ade55d24003709e2f1a6f9828a0a7e7e..1931c8a19dee2fe546db262d71cf673bdc52e63c 100644
--- a/src/uncategorized/saLiveWithHG.tw
+++ b/src/uncategorized/saLiveWithHG.tw
@@ -886,7 +886,7 @@
 <<if $HGSuiteSurgery != 0>>
 	<<if ($slaves[$i].health > 40) && $arcologies[0].FSBodyPurist == "unset">>
 		$HeadGirl.slaveName sends $assistantName notes on what surgical modifications she wants for $slaves[$i].slaveName.
-		<<include "Rules Autosurgery">>
+		<<= rulesAutosurgery($slaves[$i])>>
 	<</if>>
 	<<if $HeadGirl.fetishKnown == 1>>
 		<<if ($HeadGirl.fetish == "sadist") && ($HeadGirl.fetishStrength > 95) && ($seeExtreme == 1) && ($slaves[$i].fetish != "mindbroken")>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index dbec3f4d7908dbfe85b03ee051a49d381e60b757..5d3e8beb398c03df2bb584a7c52ba76cca180bd0 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -112,7 +112,7 @@
 <<if ($slaves[$i].assignment != "guard you")>>
 <<if ($slaves[$i].assignment != "live with your Head Girl")>>
 <<if ($cash > 0)>>
-	<<include "Rules Autosurgery">>
+	<<= rulesAutoSurgery($slaves[$i])>>
 <</if>>
 <</if>>
 <</if>>